Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
CORRECTION OF BAD PIXELS IN AN INFRARED IMAGE-CAPTURING APPARATUS
Document Type and Number:
WIPO Patent Application WO/2016/207506
Kind Code:
A1
Abstract:
The invention relates to a method for correcting bad pixels in a pixel array of an image-capturing device that is sensitive to infrared radiation. The method includes: receiving a first input image (RAW) and correcting the first input image by applying gain and offset values, detecting at least one bad pixel in the corrected first input image and adding said at least one bad pixel to a bad pixel list (LSPUR), receiving a second input image (RAW) and correcting the second input image by applying the gain and offset values, and calculating gain and offset correction values (sOff, sGain) for said at least one bad pixel on the basis of the first and second corrected input images.

Inventors:
SARAGAGLIA AMAURY (FR)
DURAND ALAIN (FR)
Application Number:
PCT/FR2016/051393
Publication Date:
December 29, 2016
Filing Date:
June 10, 2016
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ULIS (FR)
International Classes:
H04N5/33; H04N5/365; H04N5/367
Foreign References:
US20110057802A12011-03-10
EP0651566A11995-05-03
US20040239782A12004-12-02
US20140016005A12014-01-16
FR3009388A12015-02-06
US7700919B22010-04-20
US201514695539A2015-04-24
FR1453917A2014-04-30
JP2015093484A2015-04-30
Attorney, Agent or Firm:
CABINET BEAUMONT (FR)
Download PDF:
Claims:
REVENDICATIONS

1. Procédé de correction de pixels parasites d'un réseau de pixels (102) d'un dispositif de capture d'image sensible au rayonnement infrarouge, le procédé comprenant :

recevoir, par un dispositif de traitement (202) du dispositif de capture d'image, une première image d'entrée (RAW) capturée par le réseau de pixels (102) , et corriger la première image d'entrée en appliquant des valeurs de gain et de décalage à des valeurs de pixels dans la première image d' entrée ;

détecter dans la première image d' entrée corrigée au moins un pixel parasite, et ajouter ledit au moins un pixel parasite à une liste (Lgpu^) de pixels parasites ;

recevoir, par le dispositif de traitement (202) , une deuxième image d'entrée (RAW) capturée par le réseau de pixels (102) et corriger la deuxième image d'entrée en appliquant les valeurs de gain et de décalage à des valeurs de pixels dans la deuxième image d' entrée ; et

calculer des valeurs de correction de gain et de décalage (SQff, sGain) pour ledit au moins un pixel parasite sur la base des première et deuxième images d'entrée corrigées.

2. Procédé selon la revendication 1, comprenant en outre une validation des valeurs de correction de gain et de décalage (sQff, sGain) en les appliquant pour corriger les valeurs dudit au moins un pixel parasite dans une troisième image capturée par le réseau de pixels (102) et en détectant si ledit au moins un pixel parasite est encore détecté comme pixel parasite dans la troisième image.

3. Procédé selon la revendication 2, dans lequel la troisième image d'entrée est capturée à une température du réseau de pixels différente de celle de chacune des première et deuxième images d'entrée.

4. Procédé selon la revendication 2 ou 3, comprenant en outre, avant le calcul des valeurs de correction de gain et de décalage, l'ajout dudit au moins un pixel parasite détecté à une liste de mauvais pixels, et le retrait dudit au moins un pixel parasite détecté de la liste de mauvais pixels si les valeurs de correction de gain et de décalage sont validées pendant l'étape de validation.

5. Procédé selon l'une quelconque des revendi- cations 1 à 4, dans lequel le réseau de pixels comprend des colonnes de pixels, chaque colonne étant associée à un pixel de référence correspondant, et dans lequel la correction des première et deuxième images d' entrée comprend :

déterminer, sur la base de l'image d'entrée et d'un vecteur de composante de colonne ( ÇQL) représentant un écart de colonne introduit par les pixels de référence du réseau de pixels, un premier facteur d'échelle (a) en estimant un niveau de l'écart de colonne présent dans l'image d'entrée ;

générer des valeurs de décalage de colonne ( VçoL (x) ) sur la base du produit du premier facteur d'échelle par les valeurs du vecteur de composante de colonne (VÇQL) ;

déterminer, sur la base de l'image d'entrée et d'une matrice de dispersion 2D (OFFpjgp) représentant la dispersion 2D introduite par le réseau de pixels, un deuxième facteur d'échelle (β) en estimant un niveau de la dispersion 2D présente dans l'image d'entrée ;

générer des valeurs de décalage de pixel (x, y) ) sur la base du produit du deuxième facteur d'échelle par les valeurs de la matrice de dispersion 2D (OFFDISP) ; et

générer l'image corrigée (COKR) en appliquant les valeurs de décalage de colonne et de pixels .

6. Procédé selon l'une quelconque des revendications 1 à 5 dans lequel l'image corrigée (CORR) est générée sur la base de l'équation :

CORR(x,y) = GAIN(x,y) x (RAW(x,y) - a. OFFCOL(x,y) - β. OFFDISP(x,y) - y) où RAW est l'image d'entrée, a et β sont des facteurs d'échelle, γ est une valeur de correction de gain, GAIN(x, y) est une valeur de gain, OFFÇOL^'Y) et OFF^jgp (x, y) sont des valeurs de décalage, OFFÇQL étant une matrice comprenant, dans chacune de ses rangées, le vecteur de colonne ÇQL' ^FFDI S P étant la matrice de dispersion de référence.

7. Procédé selon l'une quelconque des revendications 1 à 6, dans lequel le calcul des valeurs de correction de gain et de décalage (sQff, sGain) pour ledit au moins un pixel parasite sur la base des première et deuxième images d' entrée corrigées comprend :

estimer, sur la base de pixels voisins dans la première image d'entrée, une première valeur de pixel attendue (PEXPl) ^e chacun desdits au moins un pixel parasite ;

estimer, sur la base de pixels voisins dans la deuxième image d'entrée, une deuxième valeur de pixel attendue (PEXP2) de chacun desdits au moins un pixel parasite ; et

calculer les valeurs de correction de gain et de décalage (soff/ Sga-j_n) sur la base des première et deuxième valeurs de pixels attendues estimées .

8. Procédé selon l'une quelconque des revendications 1 à 7, dans lequel la détection dudit au moins un pixel parasite comprend :

calculer un score pour une pluralité de pixels cibles comprenant au moins certains des pixels de la première image d'entrée, le score pour chaque pixel cible étant généré sur la base de k pixels voisins connectés de l'image d'entrée dans une fenêtre de H par H pixels autour du pixel cible, H étant un entier impair égal ou supérieur à 3, et k étant un entier compris entre 2 et 5, chacun des pixels voisins connectés partageant une frontière ou un coin avec au moins un autre des pixels voisins connectés et/ou avec le pixel cible et au moins l'un des pixels voisins connectés partageant une frontière ou un coin avec le pixel cible ; et

détecter qu'au moins l'un des pixels est un pixel parasite sur la base des scores calculés.

9. Procédé selon la revendication 8, dans lequel la détection dudit au moins un pixel parasite comprend la comparaison d'au moins certains des scores à une valeur de seuil (thrSPUR) .

10. Procédé selon la revendication 9, dans lequel la comparaison d' au moins certains des scores à une valeur de seuil implique la comparaison d'un sous-ensemble des scores à la valeur de seuil, le sous-ensemble comprenant plusieurs des scores les plus élevés, et dans lequel la valeur de seuil est calculée sur la base de l'équation suivante :

thrSPUR = Q3 + xEI x (Q3 - Ql)

où XJ I est un paramètre égal à au moins 1,0 et Ql et Q3 sont les premier et troisième quartiles respectivement du sous- ensemble .

11. Procédé selon la revendication 9 ou 10, dans lequel lesdits au moins certains scores sont sélectionnés en appliquant un autre seuil (throu-|-]_ier) aux scores calculés.

12. Procédé selon la revendication 11, dans lequel l'autre seuil est calculé sur la base d'une supposition que les valeurs de pixels dans l'image ont une distribution de probabilités basée sur la distribution de Laplace.

13. Procédé selon la revendication 12, dans lequel l'autre seuil est calculé sur la base de l'équation suivante :

_ ln(4) ln(3)

throutuer— h 1.5 x

A A

où A est une estimation du paramètre de la distribution exponentielle /(x) = λε~λχ correspondant à la valeur absolue (\S\) des scores calculés.

14. Support de stockage lisible par ordinateur mémo¬ risant des instructions pour mettre en oeuvre le procédé de l'une quelconque des revendications 1 à 13 lorsqu'elles sont exécutées par un dispositif de traitement.

15. Dispositif de traitement d'image comprenant :

une mémoire (206) mémorisant des valeurs de décalage et de gain (208, 201) et une liste (LsPUPJ de pixels parasites (212) ;

un dispositif de traitement (302) adapté à : recevoir une première image d'entrée (RAW) capturée par un réseau de pixels (102) d'un dispositif de capture d'image sensible au rayonnement infrarouge, et corriger la première d'image d'entrée en appliquant les valeurs de gain et de décalage à des valeurs de pixels dans la première image d' entrée ;

détecter dans la première image d' entrée corrigée (RAW) au moins un pixel parasite, et ajouter ledit au moins un pixel parasite à la liste (Lgpu^) de pixels parasites ;

recevoir une deuxième image d'entrée (RAW) capturée par le réseau de pixels (102) et corriger la deuxième image d' entrée (RAW) en appliquant les valeurs de gain et de décalage à des valeurs de pixel dans la deuxième image d' entrée ; et

calculer des valeurs de correction de gain et de décalage (SQff, sGain) pour ledit au moins un pixel parasite sur la base des première et deuxième images d'entrée corrigées.

16. Dispositif de traitement selon la revendication 15, dans lequel le dispositif de traitement est en outre adapté à valider les valeurs de correction de gain et de décalage (sQff, sGain) en ^-es appliquant pour corriger les valeurs dudit au moins un pixel parasite dans une troisième image d'entrée capturée par le réseau de pixels (102) et en détectant si ledit au moins un pixel parasite est encore détecté comme pixel parasite dans la troisième image.

Description:
CORRECTION DE PIXELS PARASITES DANS UN CAPTEUR D ' IMAGE

INFRAROUGE

Domaine

La présente description concerne le domaine des dispositifs de capture d'image en infrarouge, et en particulier un procédé et un dispositif pour corriger des pixels parasites dans une image capturée par un réseau de pixels sensible à la lumière infrarouge.

Exposé de 1 ' art antérieur

Les dispositifs de capture d'image en infrarouge (IR), comme les micro-bolomètres ou les dispositifs de capture d' image IR refroidis, comprennent un réseau de détecteurs sensibles au rayonnement infrarouge formant un réseau de pixels. Pour corriger les non-uniformités spatiales entre les pixels d'un tel réseau de pixels, une correction de décalage et de gain est en général appliquée à chaque signal de pixel (ou "valeur de pixel") d'une image capturée avant qu'elle soit affichée. Les valeurs de décalage et de gain sont générées pendant une phase d'étalonnage préliminaire en usine du dispositif en utilisant des sources émettrices uniformes (corps noirs) à des températures contrôlées, et sont mémorisées par le dispositif de capture d'image. De telles non-uniformités spatiales varient non seulement dans le temps mais aussi en fonction de la température des composants optiques, mécaniques et électroniques du dispositif de capture d'image, et par conséquent un obturateur mécanique interne est souvent utilisé dans le dispositif de capture d'image pour faciliter la correction d'image. Cela implique de capturer périodiquement une image pendant que l'obturateur est fermé afin d'obtenir une image de référence d'une scène relativement uniforme qui peut ensuite être utilisée pour l'étalonnage.

Il est courant que, à la suite du processus de fabrication de tels dispositifs de capture d'image infrarouge, un ou plusieurs pixels du réseau de pixels soient déclarés non fonctionnels à la fin de la phase d'étalonnage initiale du fabricant. De tels pixels sont en général connus dans le domaine technique sous le nom de "mauvais pixels", et ils sont identifiés dans une carte d' opérabilité mémorisée par le dispositif de capture d'image. Les valeurs de pixels générées par les mauvais pixels ne peuvent pas habituellement être considérées comme fiables, et par conséquent leurs valeurs de pixels sont remplacées par une valeur générée sur la base de pixels voisins dans l'image.

En outre on a découvert que pendant la durée de vie de tels dispositifs de capture d'image, le comportement en signal d'un ou plusieurs pixels initialement fonctionnels ne pouvait plus être décrit de façon acceptable par leurs paramètres d'étalonnage initiaux. Cela peut provenir de diverses modifi ¬ cations physiques ou même de dommages mécaniques provoqués par de minuscules particules mobiles internes laissées ou libérées dans le boitier du capteur par exemple. Ces pixels seront appelés ici pixels parasites. De tels pixels ne sont pas listés dans la carte d' opérabilité initiale, et ils peuvent dégrader la qualité de l'image.

Dans le cas de dispositifs de capture d' image équipés d'un obturateur, la demande de brevet français publiée sous le numéro FR3009388 décrit un procédé d'identification de tels pixels parasites pendant une période de fermeture d'obturateur quelconque, donnant des moyens pour mettre à jour de façon récurrente la carte d' opérabilité .

Cependant, il y a plusieurs inconvénients dans l'utilisation d'un obturateur, comme le poids et le coût supplémentaires et la fragilité de ce composant. En outre, dans certaines applications, l'utilisation d'un obturateur est inacceptable en raison du temps perdu pendant que l'obturateur est fermé et que l'étalonnage a lieu. Pendant cette période d'étalonnage, aucune image de la scène ne peut être capturée.

Dans un dispositif de capture d'image sans obturateur, il y a une difficulté technique pour l'identification de tels pixels parasites dans la scène d'image, en particulier si les valeurs de pixels sont dans une zone texturée d'une image capturée .

En supposant que les pixels parasites puissent être identifiés, de tels pixels parasites pourraient simplement être ajoutés à la liste des mauvais pixels. Toutefois, si le dispositif de capture d' image reçoit par exemple de multiples chocs pendant sa durée de vie à un point tel que la densité de pixels parasites dans l'image ne peut plus rester négligeable, une dégradation d'image pourrait se produire.

Il existe donc un besoin dans la technique, en particulier pour la capture d'images en infrarouge sans obturateur, d'un dispositif et d'un procédé pour détecter des pixels parasites, au moins pour mettre à jour la carte d' opérabilité, mais aussi pour ré-étalonner les pixels parasites particuliers qui seraient devenus mal étalonnés.

Résumé

Un objet de modes de réalisation de la présente description est de résoudre au moins partiellement un ou plusieurs besoins de l'art intérieur.

Selon un aspect, on prévoit un procédé de correction de pixels parasites d'un réseau de pixels d'un dispositif de capture d'image sensible au rayonnement infrarouge, le procédé comprenant : recevoir, par un dispositif de traitement du dispo- sitif de capture d'image, une première image d'entrée capturée par le réseau de pixels, et corriger la première image d'entrée en appliquant des valeurs de gain et de décalage à des valeurs de pixels dans la première image d'entrée ; détecter dans la première image d'entrée corrigée au moins un pixel parasite, et ajouter ledit au moins un pixel parasite à une liste de pixels parasites ; recevoir, par le dispositif de traitement, une deuxième image d'entrée capturée par le réseau de pixels et corriger la deuxième image d'entrée en appliquant les valeurs de gain et de décalage à des valeurs de pixels dans la deuxième image d' entrée ; et calculer des valeurs de correction de gain et de décalage pour ledit au moins un pixel parasite sur la base des première et deuxième images d' entrée corrigées . Par exemple le fait de corriger les première et deuxième images d'entrée comprend de corriger des valeurs de pixels pour des pixels aux mêmes emplacements dans les première et deuxième images d' entrée .

Selon un mode de réalisation, le procédé comprend en outre une validation des valeurs de correction de gain et de décalage en les appliquant pour corriger les valeurs dudit au moins un pixel parasite dans une troisième image capturée par le réseau de pixels et en détectant si ledit au moins un pixel parasite est encore détecté comme pixel parasite dans la troisième image.

Selon un mode de réalisation, la troisième image d' entrée est capturée à une température du réseau de pixels différente de celle de chacune des première et deuxième images d' entrée .

Selon un mode de réalisation, le procédé comprend en outre, avant le calcul des valeurs de correction de gain et de décalage, l'ajout dudit au moins un pixel parasite détecté à une liste de mauvais pixels, et le retrait dudit au moins un pixel parasite détecté de la liste de mauvais pixels si les valeurs de correction de gain et de décalage sont validées pendant l'étape de validation. Selon un mode de réalisation, le réseau de pixels comprend des colonnes de pixels, chaque colonne étant associée à un pixel de référence correspondant, et la correction des première et deuxième images d'entrée comprend : déterminer, sur la base de l'image d'entrée et d'un vecteur de composante de colonne représentant un écart de colonne introduit par les pixels de référence du réseau de pixels, un premier facteur d'échelle en estimant un niveau de l'écart de colonne présent dans l'image d'entrée ; générer des valeurs de décalage de colonne sur la base du produit du premier facteur d'échelle par les valeurs du vecteur de composante de colonne ; déterminer, sur la base de l'image d'entrée et d'une matrice de dispersion 2D représentant la dispersion 2D introduite par le réseau de pixels, un deuxième facteur d'échelle en estimant un niveau de la dispersion 2D présente dans l'image d'entrée ; générer des valeurs de décalage de pixel sur la base du produit du deuxième facteur d'échelle par les valeurs de la matrice de dispersion 2D ; et générer l'image corrigée en appliquant les valeurs de décalage de colonne et de pixels .

Selon un mode de réalisation, l'image corrigée est générée sur la base de l'équation :

CORR(x,y) = GAIN(x,y) x (RAW(x,y) - a. OFF COL (x,y) - β. OFF DISP (x,y) - y) où RAW est l'image d'entrée, a et β sont des facteurs d'échelle, γ est une valeur de correction de gain, GAIN(x, y) est une valeur de gain, OFFÇOL^'Y) et OFF^jgp (x, y) sont des valeurs de décalage, OFF ÇQ L étant une matrice comprenant, dans chacune de ses rangées, le vecteur de colonne ÇQL' ^ FF DISP étant la matrice de dispersion de référence.

Selon un mode de réalisation, le calcul des valeurs de correction de gain et de décalage pour ledit au moins un pixel parasite sur la base des première et deuxième images d'entrée corrigées comprend : estimer, sur la base de pixels voisins dans la première image d'entrée, une première valeur de pixel attendue de chacun desdits au moins un pixel parasite ; estimer, sur la base de pixels voisins dans la deuxième image d'entrée, une deuxième valeur de pixel attendue de chacun desdits au moins un pixel parasite ; et calculer les valeurs de correction de gain et de décalage sur la base des première et deuxième valeurs de pixels attendues estimées.

Selon un mode de réalisation, la détection dudit au moins un pixel parasite comprend : calculer un score pour une pluralité de pixels cibles comprenant au moins certains des pixels de la première image d'entrée, le score pour chaque pixel cible étant généré sur la base de k pixels voisins connectés de l'image d'entrée dans une fenêtre de H par H pixels autour du pixel cible, H étant un entier impair égal ou supérieur à 3, et k étant un entier compris entre 2 et 5, dans lequel chacun des pixels voisins connectés partage une frontière ou un coin avec au moins un autre des pixels voisins connectés et/ou avec le pixel cible et dans lequel au moins l'un des pixels voisins connectés partage une frontière ou un coin avec le pixel cible ; et détecter qu'au moins l'un des pixels est un pixel parasite sur la base des scores calculés.

Selon un mode de réalisation, la détection dudit au moins un pixel parasite comprend la comparaison d'au moins certains des scores à une valeur de seuil.

Selon un mode de réalisation, la comparaison d'au moins certains des scores à une valeur de seuil implique la comparaison d'un sous-ensemble des scores à la valeur de seuil, le sous-ensemble comprenant plusieurs des scores les plus élevés, et la valeur de seuil est calculée sur la base de l'équation suivante :

thr SPUR = Q3 + x EI x (Q3 - Ql)

où XJ I est un paramètre égal à au moins 1,0 et Ql et Q3 sont les premier et troisième quartiles respectivement du sous- ensemble .

Selon un mode de réalisation, lesdits au moins certains scores sont sélectionnés en appliquant un autre seuil aux scores calculés. Selon un mode de réalisation, l'autre seuil est calculé sur la base d'une supposition que les valeurs de pixels dans l'image ont une distribution de probabilités basée sur la distribution de Laplace.

Selon un mode de réalisation, l'autre seuil est calculé sur la base de l'équation suivante :

_ ln(4) ln(3)

thr out u er — h 1.5 x

A A

où A est une estimation du paramètre de la distribution exponentielle /(x) = λε ~λχ correspondant à la valeur absolue des scores calculés.

Selon un autre aspect, on prévoit un support de stockage lisible par un ordinateur mémorisant des instructions pour mettre en oeuvre le procédé susmentionné lorsqu'elles sont exécutées par un dispositif de traitement.

Selon un autre aspect, on prévoit un dispositif de traitement d' image comprenant : une mémoire mémorisant des valeurs de décalage et de gain et une liste de pixels parasites ; un dispositif de traitement adapté à : recevoir une première image d'entrée capturée par un réseau de pixels d'un dispositif de capture d'image sensible au rayonnement infrarouge, et corriger la première d'image d'entrée en appliquant les valeurs de gain et de décalage à des valeurs de pixels dans la première image d'entrée ; détecter dans la première image d'entrée corrigée au moins un pixel parasite, et ajouter ledit au moins un pixel parasite à la liste de pixels parasites ; recevoir une deuxième image d'entrée capturée par le réseau de pixels et corriger la deuxième image d'entrée en appliquant les valeurs de gain et de décalage à des valeurs de pixels dans la deuxième image d'entrée ; et calculer des valeurs de correction de gain et de décalage pour ledit au moins un pixel parasite sur la base des première et deuxième images d'entrée corrigées.

Selon un mode de réalisation, le dispositif de traitement est en outre adapté à valider les valeurs de correction de gain et de décalage en les appliquant pour corriger les valeurs dudit au moins un pixel parasite dans une troisième image d'entrée capturée par le réseau de pixels et en détectant si ledit au moins un pixel parasite est encore détecté comme pixel parasite dans la troisième image.

Brève description des dessins

Les caractéristiques susmentionnées et d' autres et leurs avantages apparaîtront clairement avec la description détaillées suivantes de modes de réalisation, donnés à titre d'illustration et non de limitation, en faisant référence aux dessins joints dans lesquels :

la figure 1 illustre schématiquement un dispositif de capture d'image selon un exemple de réalisation ;

la figure 2 illustre schématiquement un bloc de traitement d'image du dispositif de capture d'image de la figure 1 plus en détail selon un exemple de réalisation ;

la figure 3 est un organigramme représentant des opérations dans un procédé de détection et de correction de pixels parasites selon un exemple de réalisation de la présente description ;

la figure 4 est un organigramme illustrant des opérations dans un procédé de génération de valeurs de correction de décalage et de gain selon un exemple de réalisation de la présente description ;

la figure 5 est un organigramme illustrant des opérations dans un procédé de validation de valeurs de correction de décalage et de gain selon un exemple de réalisation ;

la figure 6 est un organigramme illustrant des opérations dans un procédé d'identification de pixels parasites selon un exemple de réalisation ;

la figure 7 est un organigramme illustrant des opérations dans un procédé de génération de scores de pixels selon un exemple de réalisation ; la figure 8A illustre un exemple de sélection de pixels voisins connectés selon un exemple de réalisation de la présente description ;

la figure 8B illustre des exemples de pixels voisins connectés et non connectés selon un exemple de réalisation ; et la figure 8C illustre un exemple d'un bord et d'un pixel parasite selon un exemple de réalisation.

Description détaillée

Bien que certains des modes de réalisation dans la description suivante soit décrits en relation avec un réseau de pixels du type micro-bolomètre, il sera clair pour l'homme de l'art que les procédés décrits ici pourraient également être appliqués à d'autres types de dispositifs de capture d'image IR, y compris des dispositifs refroidis. En outre, bien qu'on décrive ici des modes de réalisation en relation avec un dispositif de capture d' image IR sans obturateur, ces modes de réalisation pourraient également s'appliquer à un dispositif de capture d' image IR comprenant un obturateur mécanique et à des images capturées par un tel dispositif.

La figure 1 illustre un dispositif de capture d'image

IR 100 comprenant un réseau de pixels 102 sensible à la lumière IR. Par exemple, dans certains modes de réalisation, le réseau de pixels est sensible à la lumière IR à ondes longues, comme la lumière ayant une longueur d'onde comprise entre 7 et 13 um. Le dispositif 100 est par exemple capable de capturer des images seules et aussi des séquences d'images constituant de la vidéo. Le dispositif 100 est par exemple un dispositif sans obturateur.

Pour faciliter l'illustration, on a illustré en figure 1 un réseau de pixels 102 de seulement 144 pixels 104, agencés en 12 rangées et 12 colonnes. Dans des variantes de réalisation, le réseau de pixels 102 pourrait comprendre un nombre quelconque de rangées et de colonnes de pixels. Typiquement, le réseau comprend par exemple 640 par 480, ou 1024 par 768 pixels.

Chaque colonne de pixels du réseau 102 est associée à une structure de référence correspondante 106. Bien qu'elle ne soit pas fonctionnellement un élément d'image, cette structure va être appelée ici "pixel de référence" par analogie structurelle avec les pixels de formation d'image (ou actifs) 104. En outre, un bloc de sortie (OUTPUT) 108 est couplé à chaque colonne du réseau de pixels 102 et à chacun des pixels de référence 106, et fournit une image brute RAW.

Un circuit de commande (CTRL) 110 fournit par exemple des signaux de commande au réseau de pixels, aux pixels de référence 106 et au bloc de sortie 108. L'image brute RAW est par exemple fournie à un bloc de traitement d'image (IMAGE PROCESSING) 112, qui applique des décalages et des gains aux pixels de l'image pour produire une image corrigée CORR.

Chacun des pixels 104 comprend par exemple un bolomètre. Les bolomètres sont bien connus dans la technique, et comprennent par exemple une membrane suspendue au-dessus d'un substrat, comprenant une couche de matériau absorbant l'infra ¬ rouge et ayant la propriété que sa résistance est modifiée par l'élévation de température de la membrane associée à la présence de rayonnement IR.

Le pixel de référence 106 associé à chaque colonne comprend par exemple un bolomètre aveugle, qui a par exemple une structure similaire à celle des bolomètres actifs des pixels 104 du réseau, mais qui est rendu insensible au rayonnement provenant de la scène image, par exemple par un écran constitué d'une barrière réfléchissante et/ou par un dissipateur thermique obtenu par conception, par exemple en assurant une conductance thermique élevée vers le substrat, le bolomètre étant par exemple formé en contact direct avec le substrat.

Pendant une opération de lecture du réseau de pixels 102, les rangées de pixels sont par exemple lues une par une.

Un exemple de réseau de pixels du type bolomètre est par exemple décrit plus en détail dans le brevet des États-Unis d'Amérique US 7700919, cédé à la demanderesse, dont le contenu est inclus ici dans les limites autorisées par la loi. La figure 2 illustre le bloc de traitement d'image 112 de la figure 1 plus en détails selon un exemple de réalisation.

Les fonctions du bloc de traitement d'image 112 sont par exemple mises en œuvre par du logiciel et le bloc de traitement d'image 112 comprend un dispositif de traitement (PROCESSING DEVICE) 202 comportant un ou plusieurs processeurs sous le contrôle d' instructions mémorisées dans une mémoire d'instructions (INSTR MEMORY) 204. Dans des variantes de réalisation, les fonctions du bloc de traitement d'image 112 pourraient être mises en œuvre partiellement par du matériel dédié. Dans un tel cas, le dispositif de traitement 202 comprend par exemple un ASIC (circuit intégré spécifique d'application) ou un FPGA (réseau de portes programmable sur site) , et la mémoire d'instructions 204 peut être omise.

Le dispositif de traitement 202 reçoit l'image d'entrée brute RAW et génère l'image corrigée CORR, qui est par exemple fournie à un afficheur (non illustré) du dispositif de capture d'image. Le dispositif de traitement 202 est aussi couplé à une mémoire de données (MEMORY) 206 mémorisant des valeurs de décalage (OFFSET) 208, des valeurs de gain (GAIN) 210, une liste (Lgpi j pJ 212 de pixels parasites identifiés et une liste (LBADPIXEL) de mauvais pixels.

Les valeurs de décalage sont par exemple représentées par un vecteur VQQL représentant un écart de colonne structurel, et une matrice OFFp j gp représentant une dispersion structurelle

2D non de colonne introduite par le réseau de pixels 102. L' écart de colonne résulte par exemple principalement de l'utilisation du pixel de référence 106 dans chaque colonne, alors que la rangée de pixels de référence de colonne n'est en général pas parfaitement uniforme. La dispersion 2D non de colonne résulte par exemple principalement de différences locales physiques et/ou structurelles entre les bolomètres actifs du réseau de pixels, résultant par exemple de dispersions technologiques dans le processus de fabrication. La génération du vecteur QQL e t de matrice OFFpjgp, et la correction de valeurs de pixel sur la base de ce vecteur et de la matrice sont décrites plus en détail dans la demande de brevet US US14/695539, déposée le 24 avril 2015, cédée à la demanderesse, dont le contenu est inclus ici dans les limites autorisés par la loi, et dans la demande de brevet français FR14/53917 déposée le 30 avril 2014, et dans la demande de brevet japonais JP2015-093484, déposée le 30 avril 2015, aussi au nom de la demanderesse.

On va maintenant décrire un procédé tel que décrit dans ces demandes. On supposera que l'image brute RAW a été capturée par le réseau de pixels 102 de la figure 1, et que le réseau de pixels est du type où chaque colonne du réseau est associée à un pixel de référence 106 correspondant.

Une image corrigée CORR est par exemple générée sur la base de l'image brute RAW en appliquant l'équation suivante :

CORR (x, y) = GAIN(x, y) x (RAW(x, y) - aOFF COL (x, y) -

/?OFF D/SP (x, y) - y) - res ~1 où x, y sont les coordonnées de pixel 104, a et β sont des facteurs d'échelle, γ est une valeur de correction de gain, GAI (x, y) est une valeur de gain, OFFQOL( x 'Y) et OFF^jgp (x, y) sont des valeurs de décalage, OFFÇQL étant une matrice comprenant, dans chacune de ses rangées, le vecteur de colonne v COL' 0 FF DISP étant la matrice de dispersion de référence, et res est une correction résiduelle, qui par exemple est utilisée dans certains modes de réalisation pour corriger les résidus de colonne et/ou les résidus de dispersion restants dans l'image.

Le facteur d' échelle a est par exemple déterminé sur la base de l'équation suivant :

_∑x(^∑y T(RAW(x,y)) xT(y C0L (x)))

où T() représente un filtre passe-haut appliqué au vecteur de colonne V QQ L e t à l'image d'entrée RAW, et m est le nombre de rangées dans l'image. En d'autres termes, la détermination du facteur échelle a implique par exemple l'application du filtre passe-haut à l'image brute suivant ses rangées et aussi au vecteur de colonne de référence, la détermination de moyennes de colonnes de l'image filtrée, donnant un vecteur de la même taille que le vecteur de colonne de référence, puis la détermination du facteur d'échelle en tant que minimisation des différences entre les deux vecteurs, c'est à dire entre les moyennes de colonne de l'image filtrée et le vecteur de colonne filtré.

Le facteur d' échelle β est par exemple déterminé sur la base de l'équation suivante :

_∑{V x RAW-V x OFF DISP +V y RAW-V y OFF DISP )

" ~ ∑«y x OFF DISP Y+{V y OFF DISP ) 2 ) ~ 3 où V x est la valeur de gradient de pixel entre des pixels adjacents dans la direction horizontale de l'image, en d'autres termes suivant chaque rangée, et Vy est la valeur de gradient de pixel entre des pixels adjacents dans la direction verticale de l'image, en d'autres termes suivant chaque colonne.

Bien que dans la suite la correction de gain et de décalage soit décrite comme étant basée sur les équations 1 et 3 susmentionnés, dans des variantes de réalisation on pourrait utiliser d'autres procédés de correction.

La figure 3 est un organigramme représentant des opérations dans un procédé de détection et de correction de pixels parasites selon un exemple de réalisation. Ce procédé est par exemple mis en oeuvre par le circuit 112 de la figure 2 à chaque fois qu'une nouvelle image est capturée.

Des pixels parasites sont des pixels pour lesquels le décalage et le gain se sont écartés de leurs valeurs étalonnées d'origine, par exemple en conséquence d'un choc mécanique ou de dommages dus à de minuscules particules internes mobiles . Un pixel parasite peut correspondre à un "mauvais pixel" supplé ¬ mentaire, qui a par exemple été détruit et qui est par conséquent incapable de donner un signal utilisable en relation avec la scène. Cependant, les présents inventeurs ont trouvé que souvent un pixel parasite peut encore être capable de donner un signal utilisable en relation avec la scène, mais que sa valeur est devenue décalée en permanence, de façon stable, en termes de décalage et de gain par rapport à la valeur étalonnée d'origine.

Dans une opération 301, des pixels parasites sont détectés dans une image COKR, qui correspond à une image brute RAW corrigée sur la base des valeurs de gain et de décalage. Les pixels parasites détectés forment la liste Lgpu^. Comme on va le décrire plus en détail ci-après, dans un mode de réalisation les pixels parasites sont détectés sur la base d'un calcul de la distance (en terme de valeurs de pixels) par rapport à des voisins connectés de chaque pixel dans l'image. Cependant, dans des variantes de réalisation, on pourrait appliquer d'autres techniques afin d'identifier les pixels parasites. Par exemple, un ou plusieurs pixels parasites pourraient être identifiés manuellement par un utilisateur. En outre, dans certains modes de réalisation, l'image CORR pourrait être une scène uniforme, par exemple si elle est capturée avec un obturateur fermé d'un dispositif de capture d'image, facilitant par cela l'identi ¬ fication de pixels parasites.

Dans une opération suivante 302, des valeurs de correction de décalage et de gain sont calculées pour chaque pixel parasite identifié. En d'autres termes, pour chaque pixel parasite identifié, des valeurs de correction sont calculées pour corriger les valeurs de décalage et de gain courantes mémorisées. Ce calcul est par exemple basé sur au moins deux images capturées .

Dans une opération suivante 303, une validation de ces valeurs de correction de décalage et de gain est par exemple réalisée pour chaque pixel parasite. La validation est par exemple réalisée à une température du plan focal différente de la température au moment où les valeurs de correction de décalage et de gain ont été calculées, afin de vérifier que les corrections calculées assurent une correction appropriée pour ces pixels lorsque la température du plan focal change. La température du plan focal correspond à la température du réseau de pixels. En d'autres termes, les inventeurs ont remarqué qu'au moins une partie des pixels parasites détectés peuvent encore être corrigés de façon permanente, même si leurs décalages et leurs gains se sont décalés, et que la qualité des valeurs de correction de décalage et de gain calculées obtenues pour ces pixels parasites est par exemple vérifiée par leur stabilité alors que la température du plan focal a changé.

Si dans l'opération 303, les valeurs de correction de gain et de décalage sont validées, les valeurs de gain et de décalage 208, 210 pour les pixels parasites sont par exemple mises à jour, dans une opération 304, par les valeurs de correction calculées dans l'opération 302.

Dans l'autre cas, si dans l'opération 303 les valeurs de correction de gain et de décalage ne sont pas validées, dans une opération 305 les pixels parasites sont ajoutés à une liste de mauvais pixels. En d'autres termes, les pixels parasites pour lesquels les corrections sont instables avec les changements de température du plan focal sont classés comme mauvais pixels supplémentaires. Les pixels se trouvant sur la liste de mauvais pixels ont par exemple leur valeur de pixel remplacée par une estimation de pixel basée sur un ou plusieurs de leurs pixels voisins.

Dans une variante de réalisation, tous les pixels parasites identifiés dans l'opération 301 sont systématiquement ajoutés à la liste de mauvais pixels, et ne sont ensuite retirés de cette liste que si la correction est validée dans l'opération 303.

Dans certains modes de réalisation, plutôt que d'essayer de corriger les pixels identifiés comme étant parasites, les opérations 302, 303 et 304 pourraient être omises, et le procédé pourrait impliquer systématiquement l'ajout de tous les pixels parasites détectés à la liste de mauvais pixels dans l'opération 305. Une telle approche économiserait le coût du traitement associé aux opérations 302 et 303. Dans encore une autre variante, certains pixels pourraient être initialement ajoutés à la liste des mauvais pixels, et si le nombre de mauvais pixels dépasse un niveau de seuil, un ou plusieurs pixels parasites précédemment identifiés, ou un ou plusieurs pixels parasites nouvellement identifiés, pourraient être corrigés en utilisant les opérations 302 et 303.

La figure 4 est un organigramme illustrant un exemple d'opérations pour calculer des valeurs de correction de décalage et de gain dans l'opération 302 de la figure 3.

Dans une opération 401, une image est par exemple capturée et les valeurs de pixel d'au moins certains des pixels sont corrigées en utilisant les valeurs de décalage et de gain 208, 210, par exemple sur la base de l'équation 1 susmentionnée. Les entrées du procédé sont par exemple l'image capturée brute RAW, les valeurs de décalage OFFÇQL et ^ FF DISP' ^- es valeurs de gain GAIN et les termes , β et γ utilisés pour corriger l'image selon l'équation 1 susmentionnée. On supposera aussi que la liste LgpuR de pixels parasites a été générée dans l'opération 301 de la figure 3.

Dans une opération 402, les pixels p-j_ de la liste L SPUR P our lesquels la fréquence de détection FREQ dépasse un niveau de seuil FREQMIN sont sélectionnés, et les opérations suivantes du procédé sont réalisées seulement sur ces pixels.

Cette opération signifie par exemple que l'algorithme de correction est appliqué seulement aux pixels qui sont détectés de façon répétée comme pixels parasites. Par exemple, à chaque fois qu'un pixel p-j_ est détecté comme pixel parasite, la fréquence de détection FREQ est calculée comme étant égale au nombre de fois que le pixel a été détecté comme parasite dans les N images précédentes, où N est par exemple compris entre 2 et 20. Si cette fréquence est supérieure à FREQMIN^ égale par exemple à N/2, le pixel est sélectionné. Dans certains modes de réalisation, cette opération est omise, et les opérations suivantes du procédé sont appliquées à tous les pixels se trouvant sur la liste Lgpu .

Dans une opération 403, une valeur attendue PEXP du pixel est calculée. Par exemple, lorsqu'un pixel est devenu parasite, sa valeur PcoRR' après la correction de gain et de décalage, mais qui a été identifiée comme aberrante, peut être exprimée par :

PCORR = 9 x (PSPUR ~ a x o COL - β x o DISP - y) - res ~4 où PSPUR est l a valeur de pixel du pixel parasite de la matrice RAW, OQOL et °DISP son t les valeurs de la matrice OFFÇQL et OFFpjgp appliquée au pixel, g est la valeur de la matrice GAIN appliquée au pixel, et , β, y et res sont les mêmes que dans l'équation 1 susmentionnée. En supposant que ce pixel peut être corrigé de façon appropriée, il existe des valeurs de correction de gain et de décalage sg a -j_ n et SQff telles que :

PEXP = (9 ~ s Gain) x {PSPUR ~ a x o COL - /? x (o DISP - s off ) - y) - res ~5 où PEXP est la valeur de pixel attendue, et est par exemple égale à ou proche de la valeur qui pourrait avoir été obtenue si les valeurs de gain et de décalage avaient été recalculées sur la base d'une ou plusieurs nouvelles images de référence. Étant donné qu'il y a deux inconnues, pour déterminer les valeurs de s Gain et de SQff / deux valeurs attendues sont par exemple calculées comme on va le décrire maintenant.

La valeur attendue de PEXP est par exemple calculée sur la base de ses pixels voisins. Par exemple, un algorithme couramment utilisé pour corriger des mauvais pixels est appliqué, comme une interpolation de données de pixels, une extrapolation et/ou une technique connue dans la technique sous le nom de "Inpainting" .

Dans une opération 404, on vérifie si, en plus de la nouvelle valeur PEXP ^ une valeur précédente PEXPI OU PEXP2 est aussi disponible pour le pixel PsPUR' en d'autres termes si l'ensemble {PEXPI - est vide ou pas. Si une valeur précédente PEXPI existe, cela implique qu'elle a été déterminée pour une image précédente dans laquelle les valeurs de pixel d'au moins certains des pixels ont été corrigées en utilisant les mêmes valeurs de décalage et de gain 208, 210 que celles appliquées à l'image courante. En d'autres termes, les emplacements des pixels corrigés dans les images courante et précédente sont par exemple les mêmes. Si l'ensemble {PEXPI' VEXP ^PÎ est vide et qu'il n' y a pas de valeurs précédentes, dans une opération 405 la valeur de PEXP est mémorisée comme PEXP1' et l es facteurs d'échelle a et β et la valeur de correction de gain γ appliqués au pixel sont mémorisés comme valeurs (¾]_, β]_, γ]_, et la valeur de pixel PSPUR es t aussi mémorisée comme valeur PspuRl- Dans une opération 406, le pixel suivant de la liste LgpuR pour lequel la fréquence de détection FREQ est supérieure à FREQ^JN est par exemple sélectionné, et le procédé revient à l'opération 403.

Si, lorsque l'opération 404 est réalisée, il y a déjà une valeur de PEXPI pour le pixel, dans une opération suivante 407, on détermine par exemple si la différence absolue entre la valeur nouvelle PEXP et la valeur précédente PEXPI EST supérieure à une valeur de seuil thr^-j_ff m j_ n . Dans la négative, le procédé revient à l'opération 406. Autrement si les valeurs de pixel sont suffisamment espacées, l'opération suivante est l'opération 408.

Dans l'opération 408, la nouvelle valeur PEXP est mémorisée comme PEXP2 et ^- es facteurs d'échelle a et β et la valeur de correction de gain γ appliqués au pixel sont mémorisés comme valeurs ( ¾, 2' 72' et ^ a valeur de pixel PSPUR est aussi mémorisée comme valeur PSPUR2-

Dans une opération 409, des valeurs de correction de décalage et de gain Sg a -j_ n et S Q ff sont par exemple calculées sur la base des estimations PEXPI et PEXP2 · Par exemple, la valeur de S Q ff est calculée sur la base de l'équation suivante :

_ PEXP2 x (.PSP UR I - ÔI)-PEXPI X (.PSP UR2 -°2)

0 ^ β2 ΡΕΧΡ1 ~ βΐ ΡΕΧΡ2

où ôi = a t x o COL + βί x o DISP + fi . La valeur de Sg a -j_ n est par exemple calculée sur la base de l'équation suivante :

SGain ~ 9 PspuRi ~ °7i ~+ Pβi ~ Ζ X/~ ϊ l Offset

Bien sûr, il serait possible de calculer d'abord une valeur de Sg a -j_ n puis de substituer cette valeur afin de calculer la valeur S 0 ff _

Dans une opération suivante 410, les valeurs de correction de gain et de décalage SQ^IN et SQFF son t par exemple mémorisées dans la liste LsPUR en association avec le pixel PSPUR- procédé revient ensuite par exemple à l'opération 406 jusqu'à ce que tous les pixels de la liste Lgpu^ pour lesquels la fréquence de détection FREQ est supérieure à FREQJ Q N aient été traités . Le procédé est ensuite par exemple répété lorsqu'une image suivante est capturée.

Bien que dans certains modes de réalisation, les valeurs de correction de décalage et de gain calculées S Q ff et s Gain puissent être utilisées pour modifier directement les valeurs de gain et de décalage 208, 210, au moins une vérification de ces valeurs est par exemple réalisée pour vérifier leur validité en présence d'un changement de température, comme on va le décrire maintenant en référence à la figure 5.

La figure 5 est un organigramme illustrant un exemple de mise en œuvre de l'opération 303 de la figure 3 pour valider les valeurs de correction de décalage et de gain pour un ou plusieurs pixels.

Dans une opération 501 une image est capturée et corrigée en utilisant les valeurs de décalage et de gain 208, 210, en fournissant comme entrées l'image capturée RAW, et les valeurs de décalage OFFÇQL' ^ FF DISP' valeurs de gain GAIN, et les termes , β et y utilisés pour corriger l'image conformément à l'équation 1 susmentionnée. En outre, une indication de la température du plan focal est par exemple reçue. En effet, comme cela a été mentionné précédemment en relation avec l'opération 303 de la figure 3, une validation des valeurs de décalage et de gain est par exemple réalisée à une température du plan focal différente de celle du moment où les valeurs de décalage et de gain ont été calculées. Ainsi, l'indication de la température du plan focal est utilisée pour vérifier si la température du plan focal a changé. Dans l'exemple de la figure 5, l'indication de température est donnée par la valeur du facteur d'échelle β, qui varie avec la température. Les inventeurs ont remarqué que les informations de température fournies par le facteur β sont suffisamment fiables dans ce contexte de validation des nouvelles corrections de pixels parasites. Cependant, dans des variantes de réalisation, une valeur de température T générée par un capteur de température pourrait être utilisée. Par exemple, le réseau de pixels comprend un capteur de température intégré dans le réseau ou en contact avec lui pour fournir la température du plan focal.

Dans une opération 502, des pixels sont par exemple sélectionnés parmi les pixels p-j_ de la liste Lgpu^ pour lesquels la fréquence de détection FREQ dépasse un niveau de seuil FREQ IN et les opérations suivantes du procédé ne sont réalisées que sur ces pixels.

Dans une opération 503, on détermine ensuite si des valeurs de correction de gain et de décalage existent pour un premier des pixels p-j_. Si oui, l'opération suivante est l'opération 504, alors que dans la négative l'opération suivante est l'opération 505 dans laquelle le pixel suivant dans la liste est sélectionné et le procédé revient à l'opération 503.

Dans des variantes de réalisation, on pourrait appliquer le procédé de la figure 5 à tous les pixels Pj_ de la liste pour lesquels des valeurs de correction de décalage et de gain ont été calculées, indépendamment de la fréquence de détection. Ainsi l'opération 502 pourrait être omise.

Dans une opération 504, on détermine si la valeur β dépendant de la température courante est égale ou proche de l'une ou l'autre des valeurs β]_ et β2 associées aux pixels PSPURl et PSPUR2 mémorisés dans la liste LsPUR dans des opérations 405 et 408 respectivement du procédé de la figure 4. Par exemple, on détermine si la différence absolue entre β et β ] _ est supérieure à un seuil βπύη / et si la différence absolue entre β et β2 est supérieure au seuil βπίη· Si l'une ou l'autre de ces différences est inférieure au seuil, le procédé revient par exemple à l'opération 505. Par contre, s'il y a eu un changement significatif de température (changement de β) depuis le calcul des valeurs de correction de gain et de décalage, l'opération suivante est l'opération 506. Comme cela a été mentionné précédemment, plutôt que d'utiliser le facteur d'échelle β comme indication de la température, une valeur de température T pourrait être capturée par un capteur de température. Dans un tel cas, les valeurs β, β ] _ et β2 vont être remplacées dans l'opération 504 de la figure 5 par des températures T, T ] _ et 2 respectivement, où les valeurs T ] _ et 2 sont des valeurs de température mesurées en relation avec les images précédentes et mémorisées dans les opérations 405 et 408, respectivement, de la figure 4.

Dans l'opération 506, les valeurs de correction de gain et de décalage pour le pixel p-j_ sont utilisées comme essai pour corriger la valeur de pixel PsPUR obtenue pour l'image capturée dans l'opération 501, par exemple en appliquant les équations 1, 2 et 3 susmentionnées, avec les valeurs de gain et de décalage modifiées comme dans l'équation 5.

Dans une opération 507, on détermine ensuite si la valeur modifiée du pixel p-j_ est encore aberrante, et d'autres termes s'il est encore identifié comme pixel parasite. Par exemple, la technique utilisée dans l'opération 301 pour détecter des pixels parasites est appliquée à l'image avec le pixel p-j_ corrigé.

Si la valeur n'est pas aberrante, les valeurs de correction sont considérées comme validées, puisque la température du plan focal a été trouvée, dans l'étape 504, comme étant suffisamment éloignée de ses deux valeurs précédentes, et malgré ce changement de température la valeur de pixel n'est pas aberrante. Ainsi, dans une opération suivante 508, de nouvelles valeurs de décalage et de gain corrigées en utilisant les valeurs de correction SQffset et s Gain sont par exemple mémorisées dans les tables de décalage et de gain 208, 210, puis dans une opération 509, elles sont retirées de la liste Lgpu^ de pixels parasites.

Autrement, si le pixel p-j_ est encore aberrant, on suppose alors par exemple que le pixel ne peut pas être corrigé par des corrections des valeurs de gain et de décalage. Le pixel est par conséquent par exemple ajouté à la liste LBADPIXEL des mauvais pixels dans une opération 510, puis l'opération 509 est réalisée pour retirer le pixel de la liste LgpuR.

Un exemple de procédé pour détecter des pixels parasites mis en œuvre dans l'opération 301 de la figure 3 va maintenant être décrit plus en détail en faisant référence aux figures 6, 7 et 8.

La figure 6 est un organigramme illustrant un exemple d'opérations dans un procédé de détection de pixels parasites dans une image capturée. Le procédé est par exemple mis en œuvre par le dispositif de traitement 112 de la figure 2, et l'image capturée a par exemple été corrigée en appliquant les valeurs de décalage et de gain 208, 210.

Dans une opération 601, un score est calculé pour chaque pixel de l'image d'entrée sur la base d'une distance en termes de valeurs de pixels, calculée par rapport à des pixels voisins connectés.

Dans une opération 602, des valeurs aberrantes sont par exemple identifiées en comparant les scores calculés à un premier seuil. Cette étape est par exemple utilisée pour sélectionner seulement un sous-ensemble des pixels comme pixels parasites potentiels. Dans certains modes de réalisation, cette étape pourrait toutefois être omise.

Dans une opération 603, des pixels parasites sont par exemples identifiés sur la base des valeurs aberrantes identi- fiées dans l'opération 602 (ou à partir de l'image entière dans le cas où l'opération 602 est omise).

La figure 7 est un organigramme illustrant un exemple des opérations pour mettre en œuvre l'opération 601 de la figure 6 pour produire les scores. Ce procédé est par exemple appliqué à chaque pixel de l'image tour à tour, par exemple dans un ordre de balayage en trame, bien que les pixels puissent être traités dans n'importe quel ordre. Les opérations de ce procédé vont être décrites en faisant référence à la figure 8A.

La figure 8A illustre neuf vues 801 à 809 d'une fenêtre de 5 par 5 pixels représentant un exemple d'application du procédé de la figure 7. Plus généralement, la taille de la fenêtre peut être définie comme étant H x H, où H est un entier impair égal au moins à 3, et par exemple égal au moins à 5. Dans certains modes de réalisation, H est égal ou inférieur à 15. La fenêtre de H par H est autour d'un pixel cible pour lequel un score doit être généré, en d'autres termes, le pixel cible est par exemple le pixel central de la fenêtre.

En faisant de nouveau référence à la figure 7, dans une opération 701, une liste de voisins du pixel connectés est générée. Les voisins connectés sont tous les pixels partageant une frontière ou un coin avec un pixel qui a déjà été sélectionné. Ainsi, pour un pixel qui n'est pas au niveau d'un bord de l'image, il y aura huit voisins connectés. Initialement, seul le pixel pour lequel un score doit être généré est sélectionné. Ce pixel va être appelé ici pixel cible. Par exemple, comme cela est représenté par la vue 801 de la figure 8A, un score doit être calculé pour un pixel central, grisé dans la figure, ayant une valeur de pixel de 120. Comme cela est représenté par la vue 802, les voisins connectés sont les huit pixels entourant le pixel central 120.

Dans une opération 702, parmi les voisins connectés, un pixel ayant une valeur de pixel ayant la distance la plus faible par rapport à la valeur du pixel cible est sélectionné. Par exemple, la distance d(a, b) entre des valeurs de pixels a et b est définie par dÇa,b) = \a— b\ . Comme cela est représenté par la vue 803 en figure 8A, un pixel ayant une valeur de 120, égale à la valeur de pixel cible, est sélectionné.

Dans une opération 703, le voisin sélectionné dans l'opération 702 est retiré la liste de voisins connectés du pixel cible, et de nouveaux voisins connectés sont ajoutés, qui comprennent des voisins connectés du voisin nouvellement sélectionné identifié dans l'opération 702. Par exemple, comme cela est représenté par la vue 804 en figure 8A, trois nouveaux pixels connectés au pixel nouvellement sélectionné sont ajoutés à la liste.

Dans une opération 704, on détermine si k voisins connectés ont été sélectionnés. Le nombre k de voisins à prendre compte est par exemple un paramètre fixe qui est sélectionné sur la base du nombre le plus élevé attendu de pixels parasites connectés. Par exemple, pour certains capteurs d'images, on peut considérer que les pixels parasites sont toujours isolés l'un par rapport à l'autre. Dans un tel cas, k peut être choisi comme égal à juste 2. En variante si on considère qu'il est possible que pour un capteur d'image donné deux pixels parasites connectés puissent être identifiés, une valeur de k supérieure est par exemple sélectionnée, par exemple égale à une valeur comprise entre 3 et 5. Dans l'exemple de la figure 8A, k est égal à 4. Si k voisins n'ont pas encore été sélectionnés, le procédé revient à l'opération 702, dans laquelle un nouveau voisin connecté est de nouveau sélectionné. Les opérations 703 et 704 sont ensuite répétées jusqu'à ce que k voisins aient été sélectionnés, puis une opération 705 est réalisée. Comme cela est représenté dans les vues 805 à 809 de la figure 8A, un bloc de quatre voisins du pixel cible est sélectionné.

La figure 8B illustre des vues d'une fenêtre de H par H pixels, et démontre la différence entre un calcul de distance basé simplement sur les plus proches voisins dans une fenêtre, et un calcul basé sur les voisins connectés les plus proches. Comme cela est représenté par une vue 810, le pixel central est aberrant, puisque la différence entre sa valeur et son voisinage est élevée.

Une vue 811 représente quatre voisins sélectionnés dans la fenêtre qui ont les valeurs les plus proches du pixel central, et qui sont non connectés avec celui-ci. Ce calcul va conduire à un faible score indiquant que le pixel n'est pas aberrant .

Une vue 812 représente quatre voisins connectés sélectionnés. Dans ce cas, quatre pixels complètement différents sont sélectionnés, et les scores indiquent clairement que le pixel cible est aberrant.

En faisant de nouveau référence à la figure 7, dans l'opération 705, le score pour le pixel cible est calculé sur la base des voisins connectés sélectionnés. Par exemple, le score Sj_ pour un pixel cible p-j_ est calculé sur la base de l'équation suivante : où w est un poids associé au pixel, et p ] _ à p^ sont les k voisins connectés sélectionnés.

Le poids pour un pixel p est par exemple déterminé en utilisant l'équation suivante :

où std ] _ oc est un réseau d'écarts types locaux calculé pour les pixels se trouvant dans la fenêtre de H par H du pixel p triés dans l'ordre croissant, et ε est un paramètre, par exemple réglé à une très faible valeur comme 0,0001. Ainsi le poids est basé sur les écarts types d'une sous-plage des pixels dans la fenêtre H par H, la sous-plage étant sélectionnée comme étant les pixels entre H et (H^-H) sur la base des écarts types classés des pixels. Dans des variantes de réalisation, le poids pourrait être calculé sur la base de l'écart type d'un sous-ensemble différent des pixels.

Dans des variantes de réalisation, un poids différent pourrait être appliqué aux scores, où aucun poids ne pourrait être appliqué aux scores. Un avantage de l'application d'un poids basé sur l'écart type local du pixel est que la texture de la zone du pixel peut être prise en compte, une pondération supérieure étant donnée aux scores des pixels se trouvant dans des zones douces, et une pondération inférieure étant donnée aux scores des pixels se trouvant dans des zones texturées où un écart relativement élevé peut être attendu.

La figure 8C illustre des vues 813, 814 de deux fenêtres de pixels H par H, et démontre l'avantage d'appliquer le poids sur la base de l'écart type local des pixels. Le score du pixel cible dans les deux vues devrait être le même. Toutefois, dans la vue 813, il y a un bord passant à travers le pixel cible, et ainsi le pixel ne devrait pas être considéré comme aberrant. Dans la vue 814, l'image est relativement lisse dans la région du pixel cible, et le pixel cible devrait être considéré comme aberrant. Le poids w-j_ calculé pour la vue 814 sur la base de l'écart type local va être supérieur au poids calculé pour la vue 813.

En faisant de nouveau référence au procédé de la figure 6, l'opération 602 implique par exemple de déterminer un score de seuil sur la base d'une distribution de probabilité pour des scores attendus dans l'image. Les présents inventeurs ont trouvé que la distribution de Laplace est particulièrement bien adaptée à la plupart des scènes d'image en infrarouge.

Il est connu que si S~LaplaceÇO,a) , alors \S\~ExpÇa ~1 ) est une distribution exponentielle. La fonction de densité de probabilité \S\~Exp(X) , avec λ = σ -1 , est par conséquent de la forme ( ) = λε ~λχ , avec A > 0. Sa fonction de distribution est (x) = 1 — ε ~λχ . Le paramètre λ de l'exponentielle peut être estimé en estimant la moyenne, sur la base de la moyenne de l'échantillon, et en prenant l'inverse de cette moyenne : où n est le nombre de pixels dans l'image.

En appelant le seuil thr ou - | - ] _-j_ er , ce seuil est par exemple calculé sur la base de A en utilisant l'équation suivante : thr out u er =— h 1.5 x—— -12

Plutôt que de calculer le seuil en utilisant cette équation, une alternative consisterait à simplement choisir un seuil qui élimine par filtrage un certain pourcentage des scores, comme 95% des scores. Toutefois, un avantage d'un filtrage utilisant le seuil comme décrit ci-avant sur la base de la distribution de Laplace est que cela évite des problèmes introduits par le bruit. En effet, si un pourcentage fixe des scores est sélectionné, le nombre de pixels sélectionnés va être le même pour une même image avec ou sans bruit. Toutefois, le seuil déterminé sur la base de la distribution de Laplace va varier en fonction du niveau de bruit dans l'image.

L'opération 603 de la figure 6 implique par exemple l'identification de pixels parasites parmi les pixels aberrants identifiés dans l'opération 602. Cela est par exemple obtenu en sélectionnant des scores au-dessus d'un niveau de seuil calculé sur la base des scores des pixels aberrants. Le seuil thrgpu^ est par exemple déterminé en utilisant l'équation suivante :

thr SPUR =Q3+ x EI x (Q3 - Ql) -13 où XJ I est un paramètre choisi par exemple entre 1,0 et 5,0 et par exemple égal à 1,5, et Ql et Q3 sont les premier et troisième quartiles des pixels aberrants identifiés dans l'opération 602, respectivement.

Dans certains modes de réalisation, pour éviter de fausses alertes, un pixel n'est considéré comme pixel parasite que si son score dépasse le seuil thrgpu^ et son score est supérieur à un seuil minimum thr scorem - j _ n égal à une valeur fixe. Un avantage des modes de réalisation décrits ici est qu'on peut détecter des pixels parasites en utilisant un procédé relativement simple et efficace. En outre, le procédé de correction de pixels parasites signifie que, plutôt que d'être classés comme mauvais pixels, des valeurs de pixels, portant des informations de la scène, provenant de certains pixels peuvent continuer à être utilisées pour générer des pixels de l'image.

Avec la description ainsi faite d'au moins un mode de réalisation illustratif, diverses altérations, modifications, et améliorations apparaîtront à l'homme de l'art.

Par exemple, bien qu'on ait décrit un exemple spécifique de micro-bolomètre en relation avec les figures 1 et 2, il apparaîtra clairement à l'homme de l'art que les procédés décrits ici pourraient être appliqués à diverses autres mises en œuvre d'un micro-bolomètre, où à d'autres types de dispositifs de capture d' image en infrarouge .

En outre, il apparaîtra clairement à l'homme de l'art que les diverses opérations décrites en relation avec les divers modes de réalisations pourraient être réalisées, dans des variantes de réalisation, dans des ordres différents sans impacter leur efficacité.