• Aucun résultat trouvé

30 ans de démosaïçage

N/A
N/A
Protected

Academic year: 2021

Partager "30 ans de démosaïçage"

Copied!
31
0
0

Texte intégral

(1)

HAL Id: hal-00204924

https://hal.archives-ouvertes.fr/hal-00204924

Submitted on 15 Jan 2008

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

30 ans de démosaïçage

David Alleysson

To cite this version:

David Alleysson. 30 ans de démosaïçage. Traitement du Signal, Lavoisier, 2004, 21 (6), pp.561-581.

�hal-00204924�

(2)

30 ans de d´emosa¨ı¸cage - 30 years of demosaicing

David Alleysson

Mots clefs : cam´ eras num´ eriques couleur mono circuit, interpolation, Keywords : single-chip digital cameras, interpolation

14 f´ evrier 2005

R´esum´e

Cet article propose une revue de trente ann´ ees de d´ eveloppement des algorithmes de d´ emosa¨ı¸ cage utilis´ es dans les cam´ eras num´ eriques pour la reconstruction des images couleurs. La plupart des cam´ eras num´ eriques actuelles utilisent un seul capteur devant lequel est plac´ ee une matrice de filtres couleurs. Ce capteur ´ echantillonne par cons´ equent une seule couleur par position spatiale et un algorithme d’interpolation est n´ ecessaire pour la d´ efinition d’une image couleur avec trois composantes par position spatiale. Cet article montre que l’ensemble des techniques du traitement du signal et des images a ´ et´ e utilis´ e pour r´ esoudre ce probl` eme. Aussi, une nouvelle m´ ethode propos´ ee r´ ecemment par l’auteur et collaborateurs est d´ ecrite. Cette m´ ethode, bas´ ee sur un mod` ele d’´ echantillonnage couleur par les cˆ ones de la r´ etine, r´ ev` ele la nature de l’´ echantillonnage spatio-chromatique dans les cam´ eras couleur ` a un seul capteur.

This paper proposes a review of thirty years of the development of demosaicing algorithms used in digital camera for the reconstruction of color image. Most recent digital camera used a single sensor in front of a color filter array is placed. This sensor sample a single chromatic value per spatial position and an interpolation algorithm is needed for the definition of a color image with three components per spatial position. This article shows that the whole signal and image processing technics have been used for solving this problem. Moreover, a new method proposed recently by the author and collaborators is decribed. This method based on a model of chromatic sampling by the cones in the retina highlights the nature of spatio-chromatic sampling in digital camera with single sensor.

1 Introduction

L’homme a toujours cherch´ e ` a figer les images dans le temps pour garder une trace pr´ ecise des ´ ev` enements importants

que sa propre m´ emoire ne pouvait conserver intacte. Apr` es la peinture et les proc´ ed´ es photographiques, aujourd’hui les

images sont num´ eriques, stock´ ees sur des supports presque inalt´ erables pour lesquels une copie intacte peut toujours ˆ etre

r´ ealis´ ee. De mˆ eme aujourd’hui, plutˆ ot que des images fixes, il est possible de stocker des s´ equences d’images sur le mˆ eme

type de support sans alt´ eration ` a la copie.

(3)

L u m i è r e i n c i d e n t e

R e f l e c t e u r 6 0 % F i l t r e R o u g e

C C D M i r o i r

M i r o i r

C C D

C C D F i l t r e V e r t

F i l t r e B l e u R e f l e c t e u r 5 0 %

L u m i è r e i n c i d e n t e

C C D M a t r i c e d e f i l t r e s c o u l e u r s ( C F A )

Fig. 1 – (a) Sch´ ema d’une cam´ era ”tri-ccd”. (b) Sch´ ema d’une cam´ era ”mono-ccd” avec une matrice de filtres couleurs

Cependant, les techniques d’acquisition de telles images et, plus particuli` erement en couleur, ont n´ ecessit´ e de nombreuses

´

etudes et ´ evolutions pour permettre de fabriquer des produits utilisables par le grand public ` a des prix raisonnables et fournissant une qualit´ e d’image suffisante. Cet article fait une revue des m´ ethodes mises en œuvre pour l’acquisition des images fixes ou anim´ ees par des cam´ eras utilisant un seul capteur (single-chip), ayant permis la r´ eduction des coˆ uts des cam´ eras et l’acc` es au grand public.

La d´ efinition d’une image num´ erique couleur requiert un vecteur ` a trois composantes ` a chaque position spatiale, g´ en´ eralement appel´ ees R, G et B (pour Red, Green, Blue en anglais) afin de simuler la trivalance de la perception des couleurs chez l’homme. A partir d’une telle donn´ ee num´ erique, il est possible d’afficher une image sur un ´ ecran en modulant l’intensit´ e d’excitation de trois phosphores sur chaque pixel de l’´ ecran. De mˆ eme, il est possible de reproduire par impression sur un support papier les couleurs mesur´ ees dans la sc` ene naturelle.

On a longtemps pens´ e que l’acquisition d’une image num´ erique couleur requierait trois capteurs, chacun sensible ` a une gamme de longueur d’onde R, G et B. Ainsi, certaines cam´ eras num´ eriques sont compos´ ees de trois capteurs (g´ en´ eralement CCD) devant lesquels est plac´ e un filtre de s´ election du spectre dans les gammes de rouge, vert et bleu. Pour distribuer la lumi` ere sur ces trois capteurs, des miroirs semi r´ efl´ echissants d´ ecomposent le flux lumineux sur diff´ erentes voies. Un sch´ ema de cam´ era num´ erique, dite ”tri-CCD”, est repr´ esent´ e sur la figure 1(a).

Bien que cette configuration fonctionne parfaitement, elle n´ ecessite des contraintes d’alignement difficiles ` a r´ ealiser, et surtout coˆ ute cher puisque la majeure partie du prix d’une cam´ era est constitu´ e du coˆ ut du capteur. Pour pallier ces contraintes, plusieurs m´ ethodes ont ´ et´ e propos´ ees, utilisant un seul capteur au lieu de trois. Une de ces m´ ethodes utilise un disque compos´ e de plusieurs filtres de couleur tournant devant le capteur de mani` ere ` a filtrer une partie du spectre. La rotation du disque est synchronis´ ee avec le balayage de l’acquisition des valeurs de pixels et permet d’acqu´ erir successivement les valeurs rouges, vertes et bleues ` a chaque position spatiale. Mais le temps d’acquisition des trois plans couleurs de l’image est alors trois fois sup´ erieur et cette m´ ethode a ´ et´ e abandonn´ ee pour les cam´ eras. Un principe similaire est cependant utilis´ e aujourd’hui pour la projection des images sur ´ ecran (DLP de Texas Instrument commercialis´ e dans les projecteurs JVC).

Une autre approche, propose de juxtaposer ` a la surface du capteur un film transparent compos´ e d’une alternance de bandes

verticales ayant des sensibilit´ es diff´ erentes. Un second film transparent similaire est juxtapos´ e angulairement au premier

[Macovski68]. De cette mani` ere, on cr´ ee plusieurs sites diff´ erents de sensibilit´ e ` a la longueur d’onde qui correspondent ` a

la juxtaposition des ´ el´ ements de filtres dans les bandes. Cette technique est difficile ` a produire ´ economiquement lorsque

l’on veut une grande densit´ e de pixels. Une m´ ethode utilisant des bandes de trois ou quatre filtres a ´ et´ e ´ egalement mise

(4)

en oeuvre. Dans ces syst` emes, les filtres sont align´ es verticalement et le balayage de l’image est r´ ealis´ e horizontalement.

Cette m´ ethode donne une p´ eriode d’´ echantillonnage des couleurs diff´ erente suivant la direction horizontale ou verticale. Une derni` ere approche (”dot” scanning system) utilise des ´ el´ ements de sensibilit´ e diff´ erentes, arrang´ es en triade [Banning54]

ou en r´ ep´ etition de quatre ´ el´ ements [Banning56], imitant la structure des phosphores d’un ´ ecran CRT. Mais le coˆ ut de fabrication du nombre d’´ el´ ements requis pour avoir suffisamment de d´ etails n’a pas rendu cette approche satisfaisante.

C’est en 1976 que Bruce Bayer [Bayer76], de la compagnie Kodak, proposa un nouveau syst` eme d’acquisition d’images num´ eriques couleurs. Il proposa de disposer devant le capteur de large bande de sensibilit´ e ` a la longueur d’onde une matrice de filtres couleurs (Color Filter Array - CFA). Contrairement aux bandes de filtres propos´ ees pr´ ec´ edemment, la matrice permet une mˆ eme p´ eriode d’´ echantillonnage horizontale et verticale de chacune des trois couleurs. Pour cela, une des couleurs doit apparaˆıtre deux fois dans le motif de r´ ep´ etition de taille 2x2. La Figure 1(b) montre un sch´ ema de construction de cam´ era avec un seul capteur, ”mono-CCD”, avec une matrice de filtre couleur de Bayer. Pour ce type de capteur, l’image est form´ ee ` a l’acquisition d’une mosa¨ıque de couleur. C’est la raison pour laquelle l’algorithme de reconstruction de l’image couleur est appel´ e d´ emosa¨ı¸ cage o` u d´ emosa¨ıquage (demosaicing ou demosaicking en anglais).

La matrice de filtre couleur propos´ ee par Bayer est compos´ ee d’une alternance d’´ el´ ements rouges et verts une ligne sur deux, et d’une alternance d’´ el´ ements verts et bleus sur les autres lignes, de telle sorte que les ´ el´ ements verts soient dispos´ es en quinconce et en nombre deux fois sup´ erieur aux ´ el´ ements rouges et bleus. L’id´ ee d´ efendue par Bayer et perp´ etr´ ee depuis sans aucune remise en cause est que le doublement de pixels sensibles au vert permet une meilleure reconstruction de la luminance. En effet, la sensibilit´ e lumineuse de l’observateur humain ` a la longueur d’onde n’est pas constante et suit la loi de visibilit´ e photopique, V (λ) (voir l’ouvrage de R. S` eve [Seve96]). Or, cette loi montre que la sensation lumineuse est plus importante dans les longueurs d’ondes moyennes, autour de 550 nm et d´ ecroit de chaque cˆ ot´ e de cette valeur. Il s’av` ere que cette longueur d’onde produit une sensation de couleur verte. Ainsi, Bayer ´ emet l’id´ ee que la population d’´ echantillons sensibles ` a la longueur d’onde proche de 550 nm augmentera la d´ efinition spatiale de la luminance. Nous verrons que cet argument est erron´ e et que la fonction de visibilit´ e photopique, utile pour d´ eterminer les composantes chromatiques de la sensibilit´ e humaine ` a la luminance, ne relate en rien l’information spatiale de luminance. Comme cons´ equence, nous verrons qu’une matrice de filtre couleur compos´ ee de deux fois plus de bleus que de rouges et de verts permettra une meilleure reconstruction de l’image. Nous verrons aussi que les artefacts de reconstruction peuvent parfaitement s’expliquer en terme d’aliasing entre la luminance et la chrominance dans le spectre de Fourier de l’image CFA. Enfin, nous verrons que la proposition de Bayer en 1976, et particuli` erement, l’arrangement spatial des filtres de couleur dans la matrice est optimale puisqu’elle r´ eduit le risque d’aliasing.

La plupart des algorithmes d´ evelopp´ es en traitement du signal et des images ont trouv´ e application dans ce probl` eme de d´ emosa¨ı¸ cage. Il est donc tr` es instructif de suivre l’histoire de l’´ evolution de ces algorithmes, puisqu’elle est parall` ele

`

a l’histoire du traitement num´ erique du signal et des images. D’autre part, ce probl` eme d´ epasse largement le cadre du

traitement d’image. En effet, ce type de probl´ ematique concerne aussi la vision o` u trois types de cˆ ones sensibles ` a trois

longueurs d’ondes diff´ erentes sont entrelac´ es dans la r´ etine. Comprendre la repr´ esentation des donn´ ees spatio-chromatiques

dans le syst` eme visuel reste un d´ efi, notamment pour expliquer la d´ ependance de la perception des couleurs en fonction de

l’environnement spatial. Il est certain que les m´ ethodes de d´ emosa¨ı¸ cage apporteront beaucoup pour la compr´ ehension des

m´ ecanismes de vision spatio-chromatique.

(5)

B 1 1 B 1 3 B 1 5 G 1 2 G 1 4

G 2 1 G 2 3 G 2 5 R 2 2 R 2 4

B 3 1 G 3 2 G 3 4 B 3 3 B 3 5

G 4 1 R 4 2 G 4 3 R 4 4 G 4 5 G 1 6 G 3 6 G 5 6 G 5 4 G 5 2

G 6 1 G 6 3 G 6 5

B 5 1 B 5 3 B 5 5

R 6 2 R 6 4 R 6 6 R 4 6

R 2 6

Fig. 2 – (a) Image utilis´ ee pour la simulation. (b) Image CFA, les pixels dans les plans RGB de l’image originale sont

supprim´ es pour simuler un ´ echantillonnage par une matrice de Bayer. L’image apparaˆıt verdˆ atre parce qu’il y a deux fois plus de pixels verts que de rouges et de bleus dans la matrice de Bayer. (c) Num´ erotation de la matrice de Bayer.

2 Historique des algorithmes de d´ emosa¨ı¸ cage

Dans cette partie, nous allons d´ etailler plusieurs grandes familles d’algorithmes utilis´ es pour le d´ emosa¨ı¸ cage. Le lecteur pourra trouver plusieurs articles de r´ ef´ erences en anglais pour compl´ eter l’´ eventail [Cok94, Adams95, Adams98-2, Longere02, Muresan02, Ramanath02, Lu03, Gunturk04]. Il est impossible de d´ etailler toutes les m´ ethodes propos´ ees dans la litt´ erature, bien que toutes apportent un ´ el´ ement de r´ eponse et un ´ eclairage sur la nature de l’espace spatio-chromatique. Le choix et la classification des m´ ethodes sont donc arbitraires et sous la responsabilit´ e de l’auteur.

Chaque pr´ esentation d’algorithme est acccompagn´ ee d’un figure illustrant la qualit´ e de la reconsruction. Pour les simu- lations, nous avons utilis´ e une image de la base de donn´ ees Kodak, ”lighthouse”, issue du format Pcd, extraite en r´ esolution 384x256 et convertie en nombre flottant entre 0 et 1. Cette image, ` a l’origine compos´ ee de trois couleurs par pixels, est sous ´ echantillonn´ ee spatialement pour obtenir une image avec une seule couleur par pixel, en accord avec l’arrangement des couleurs dans la matrice de filtres couleur de Bayer (Figure 2(a)(b)). Cette image sera appel´ ee image CFA dans la suite de l’article. Il est important de noter que les r´ esultats de la simulation d´ ependent de la fa¸ con dont l’image CFA est obtenue, sa r´ esolution, mais aussi l’ordre des couleurs dans la d´ ecomposition. Dans cet article, nous avons choisi d’utiliser le pixel en haut ` a gauche de l’image de couleur bleu, le pixel ` a droite et de dessous est vert, le pixel de coordonn´ ees (2,2) est rouge (Figure 2(c)).

L’application utilis´ ee est Matlab et la programmation des algorithmes est sous la seule responsabilit´ e de l’auteur et

collaborateurs. Avec chacune des simulations, nous donnerons le rapport signal sur bruit et une analyse comparative bas´ ee

sur une base de 23 images est disponible en Section 5.

(6)

2.1 Avant le d´ emosa¨ı¸ cage

Dans la d´ efinition du brevet de Bayer, il n’est pas mention d’algorithmes pour la reconstruction de l’image couleur ` a partir de l’image CFA extraite du capteur. L’utilisation du CFA d´ ecoule de la technologie de cam´ eras pour la t´ el´ evision et du format NTSC aux Etats-Unis. Implicitement, si le nombre de lignes dans le capteur correspond au nombre de lignes du format NTSC (525), il suffirait d’effectuer de simples conversions pour produire un signal de luminance (Y) compatible avec le format NTSC ` a partir du signal vert (G) extrait du capteur CFA. De plus, le nombre de pixels couleur rouge et bleu correspondrait alors, ` a peu pr` es, ` a la d´ efinition de la largeur de bande de la chrominance (I,Q) d´ efinie dans le format NTSC. C’est sans doute la raison pour laquelle le d´ emosa¨ı¸ cage n’a pas ´ et´ e introduit directement apr` es le brevet de Bayer, mais des ann´ ees plus tard, lorsque les formats num´ eriques sont devenus l’outil grand public pour l’acquisition d’images ou de films dans de nombreux formats de taille d’image diff´ erents.

Peu apr` es le brevet de Bayer, Dillon [Dillon77], ´ egalement de la compagnie Kodak, proposa d’autres matrices de filtres couleurs pour lesquelles les couleurs R et B sont pr´ esentes mˆ eme si l’on consid` ere seulement les lignes paires ou impaires de la matrice. La raison de cette nouvelle proposition est que, dans la matrice de Bayer, lorsqu’on r´ ealise une mesure de l’image en entrelac´ e (on mesure en deux passes les 525 lignes de l’image pour produire alternativement une image de 212 puis 213 lignes en mesurant une ligne sur deux), un papillotement apparaˆıt sur la s´ equence vid´ eo pour les pixels rouges et bleus ´ echantillonn´ es une fois sur deux. En utilisant les matrices de Dillon dans lesquelles chacune des trois couleurs est pr´ esente sur les lignes paires ou impaires, le papillotement est r´ eduit. La matrice de Bayer n’a donc pas connu tout de suite le succ` es qu’elle a aujourd’hui. Cependant, avec les matrices de Dillon, la p´ eriode d’´ echantillonnage de chacune des couleurs n’est pas la mˆ eme en horizontale et verticale, et sup´ erieure ` a celle de la matrice de Bayer.

2.2 ethodes simples

Les premiers travaux pour l’am´ elioration de l’image num´ erique couleur acquise par un seul capteur sont apparus juste avant les ann´ ees 80. On consid` ere, ` a cette ´ epoque, le probl` eme de d´ emosa¨ı¸ cage comme un probl` eme d’interpolation pour lequel une s´ eparation pr´ ealable de l’image CFA en trois canaux de couleurs contenant des z´ eros aux pixels manquants est r´ ealis´ ee. Les traitements du signal vid´ eo sont r´ ealis´ es avec des ´ el´ ements ´ electroniques discrets utilisant des retardateurs et des additionneurs. Adcock et Skaggs [Adcock77], de la soci´ et´ e Texas Instrument, proposent une m´ ethode d’interpolation lin´ eaire sur les lignes de l’image. Cependant, dans plusieurs travaux, la parent´ e de l’interpolation lin´ eaire est attribu´ e ` a Cok [Cok86-1]. Plus tard, Dillon et Bayer [Dillon79-1] propose une m´ ethode appel´ ee ”box-car” pour laquelle la valeur du pixel est maintenue ` a la position manquante lors du balayage des lignes pour la lecture de la valeur des pixels. Cette m´ ethode s’apparente ` a une interpolation par copie de pixels.

A titre d’illustration, et dans le cas de la matrice de Bayer (contrairement au travaux cit´ es pr´ ec´ edemment), nous

montrons ces m´ ethodes tr` es simples pour remplir les pixels manquants dans la matrice CFA. La m´ ethode de copie de pixels

est illustr´ ee sur la figure 3. La m´ ethode d’interpolation lin´ eaire peut s’appliquer dans les deux dimensions, horizontale et

verticale (dans ce cas on dit bilin´ eaire) si l’on dispose d’un processeur de signal et d’une m´ emoire ´ evolu´ ee permettant de

m´ emoriser plus d’une ligne et de r´ ealiser les traitements apr` es coup. C’est justement ` a partir du brevet de Cok en 86 que

commencent ` a apparaˆıtre des syst` emes de cam´ eras disposant d’un processeur, d’une m´ emoire et d’un bus de transfert de

donn´ ees. Donc, contrairement au traitement en ligne propos´ e pr´ ec´ edemment, l’interpolation bilin´ eaire consiste ` a interpoler

lin´ eairement les pixels manquants ` a partir des pixels voisins horizontaux et verticaux existants. Par exemple pour interpoler

(7)

Fig. 3 – Illustration de la m´ ethode de copie de pixels.

Fig. 4 – (a) M´ ethode d’interpolation par copie de pixels (22.85dB). (b) Par interpolation bilin´ eaire (25.87dB)

le pixel bleu ` a la position (2,2) et le pixel vert ` a cette mˆ eme position, on applique les formules suivantes : B 22 = B 11 + B 13 + B 31 + B 33

4 G 22 = G 12 + G 21 + G 23 + G 32

4 (1)

Comme le pas d’´ echantillonnage de chacune des couleurs est r´ egulier dans le CFA de Bayer, il est possible d’appliquer l’interpolation bilin´ eaire ` a l’aide de filtres de convolution. Par exemple le filtre F G propos´ e dans l’´ equation (2) permet l’interpolation des pixels verts manquants par convolution de ce noyau de filtre avec la matrice des pixels verts dans laquelle les pixels manquants sont remplis par des z´ eros. De mˆ eme, le noyau du filtre de convolution F RB permet l’interpolation bilin´ eaire des plans rouge et vert.

F G =

0 1 0

1 4 1

0 1 0

/4 F RB =

1 2 1

2 4 2

1 2 1

/4 (2)

La figure 4(a)(b) montre le r´ esultat de l’interpolation par la copie de pixels et par l’application des noyaux de filtres de convolution de l’´ equation (2) pour l’interpolation bilin´ eaire. Nous voyons clairement deux types d’artefacts qui apparaissent lors de l’application de ces algorithmes, un lissage de l’image ou flou et l’apparition de fausses couleurs. L’algorithme de copie de pixels n’apporte pas trop de flou, mais plutˆ ot un cisaillement des contours, ainsi que de nombreuses fausses couleurs.

L’algorithme d’interpolation bilin´ eaire g´ en` ere un floue flagrant, mais est moins sujet ` a l’apparition de fausses couleurs.

(8)

2.3 ethodes optiques

Mˆ eme si le nombre de lignes de la cam´ era est compatible avec le format de codage et le nombre de lignes ` a la restitution, comme pour l’exemple du Bayer CFA et du format NTSC, il subsiste n´ eanmoins l’apparition d’artefacts dans les images acquises. Ce probl` eme d’artefacts est du ` a la violation du th´ eor` eme d’´ echantillonnage de Whittaker-Shannon qui stipule que la fr´ equence d’´ echantillonnage doit ˆ etre au moins le double de la fr´ equence maximale du signal continu ` a ´ echantillonner pour permettre une repr´ esentation parfaite de l’image continue. Or, la fr´ equence maximale du signal lumineux pour des sc` enes naturelles n’est pas d´ efini mais est limit´ e dans les cam´ eras grˆ ace aux propri´ et´ es de l’optique. Pritchard [Pritchard71]

a propos´ e d’utiliser un limiteur de fr´ equence dans le chemin optique de la cam´ era. Ce limiteur de fr´ equence est bas´ e sur un filtre bir´ efringent [Evans49] capable de s´ eparer la lumi` ere incidente en plusieurs raies parall` eles et permettre ainsi le contrˆ ole de la fr´ equence maximale du signal. Cette m´ ethode permet de r´ eduire les fausses valeurs de pixels dans les cam´ eras avec un seul capteur. Elle permet aussi de consid´ erer des cam´ eras de r´ esolutions diff´ erentes du format NTSC puisque les propri´ et´ es optiques peuvent ˆ etre adapt´ ees ` a la fr´ equence d’´ echantillonnage.

Mais, dans les cam´ eras avec un seul capteur, la p´ eriode d’´ echantillonnage horizontale, verticale et diagonale de chacune des couleurs n’est pas identique et le risque d’aliasing est donc fort. D’autre part, apr` es la proposition de Bayer, il parait

´

evident que le doublement de pixels verts dans la matrice est n´ ecessaire. Greivenkamp [Greivenkamp86, Greivenkamp90]

propose un filtre spatial optique permettant de moduler la fr´ equence d’une couleur par rapport aux autres. Il utilise ce filtre avec une matrice compos´ ee de colonnes de mˆ eme couleur et un multiplexage des couleurs en ligne suivant le motif GRGB.

Ainsi, il peut utiliser la propri´ et´ e de doublement des pixels verts propos´ ee par Bayer et limiter le risque d’aliasing.

Mˆ eme si, dans le texte de son brevet, Greivenkamp annonce qu’avec cette m´ ethode, il est possible de r´ ealiser des filtres pour lesquelles la fr´ equence horizontale et verticale peut ˆ etre contrˆ ol´ ee ind´ ependamment pour chaque bande de longueur d’ondes, il semble que ce ne soit pas facilement r´ ealisable. En effet, aucune proposition n’a ´ et´ e faite dans le cas de la matrice de Bayer.

En 1986, Cok, [Cok86-1] propose une m´ ethode, qui sera d´ etaill´ ee dans la section 2.4, utilisant un filtre optique bir´ efringent et une technique pour l’interpolation des pixels manquants. Ensuite, Weldy et Kristy [Weldy87] proposent une m´ ethode d’interpolation optimis´ ee en fonction du filtrage optique. Cette m´ ethode est efficace pour une r´ ep´ etition de pixels verts de deux ou trois de suite sur une ligne mais n’est pas efficace dans le cas de la matrice de Bayer. Weldy [Weldy89] montre une comparaison favorable de sa m´ ethode avec celle de Cok, mais celle de Cok est utilisable avec la matrice de Bayer.

Finalement, en 1994, Cok justifie l’abandon des filtres optiques par le fait que ces filtres sont difficiles ` a fabriquer, et leur propri´ et´ e de s´ eparation spatiale est bien contrˆ ol´ ee uniquement pour les longueurs d’onde monochromatiques. Ils ont tendance ` a trop filtrer spatialement les images et surtout, des m´ ethodes d’interpolation performantes ont ´ et´ e trouv´ ees.

Pour toutes ces raisons les m´ ethodes de filtrage optiques ont ´ et´ e abandonn´ ees et les chercheurs se sont concentr´ es sur les m´ ethodes de reconstruction, le d´ emosa¨ı¸ cage. Le seul ´ el´ ement optique ` a consid´ erer d´ esormais dans les cam´ eras num´ eriques et la propri´ et´ e de filtrage passe-bas de la lentille de focalisation.

2.4 Interpolation bas´ ee sur la constance de teintes

La premi` ere id´ ee fondamentale pour l’am´ elioration de l’interpolation a ´ et´ e d´ evelopp´ ee par Cok et publi´ ee conjointement

avec la m´ ethode optique propos´ ee par Greivenkamp [Cok86-1]. En parall` ele, il publie un autre brevet qui d´ etaille mieux la

m´ ethode et montre qu’elle s’applique ` a plusieurs types de cam´ eras, notamment celle utilisant une matrice de Bayer [Cok87].

(9)

Fig. 5 – (a) M´ ethode de constance des teintes (28.55dB) (b) M´ ethode de reconnaissance des formes (30.39dB)

Notons ´ egalement que ce brevet d´ ecrit une m´ ethode utilisant un voisinage horizontal et vertical pour l’interpolation. La contrainte de traitement en ligne n’est plus n´ ecessaire grˆ ace ` a un syst` eme de m´ emoire et de processeur reli´ es par un bus de transfert de donn´ ees.

Cok propose d’interpoler la teinte, plutˆ ot que chacune des couleurs prise s´ epar´ ement. L’id´ ee intuitive est que la teinte ne varie pas ` a la surface d’un objet. Donc la m´ ethode devrait diminuer l’apparition de fausses couleurs. La teinte est calcul´ ee comme le rapport entre Rouge et Vert (R/G) et Bleu et Vert (B/G). L’algorithme est alors le suivant. On commence par interpoler les pixels verts manquants par la m´ ethode d’interpolation bilin´ eaire propos´ ee pr´ ec´ edemment (section 2.2). Puis on calcule pour les pixels rouges et bleus existants les teintes R/G et B/G. On interpole ensuite de mani` ere bilin´ eaire ces teintes, puis on multiplie par les valeurs de G pour obtenir les valeurs de R et de B correspondantes.

Par exemple, pour l’interpolation du pixel bleu ` a la position (2,2) on a : B 22 = G 22

B 11 G 11 + B G 13

13 + B G 31

31 + B G 33

33

4 (3)

Dans une deuxi` eme version, Cok [Cok87] propose d’utiliser le logarithme de l’intensit´ e des pixels, pour ramener la division ` a une soustraction. En pratique, grˆ ace ` a la fonction non lin´ eaire de l’intensit´ e des pixels dans une image, cette m´ ethode par soustraction pour le calcul des teintes donne de bons r´ esultats. En particulier, pour l’image que nous utilisons, elle r´ esulte mˆ eme en une meilleure reconstruction. C’est donc celle-ci que nous utilisons pour impl´ ementer cet algorithme.

La Figure 5(a) montre le r´ esultat de l’interpolation par la m´ ethode de constance de teinte. Cette m´ ethode est bien plus

performante que les deux pr´ ec´ edentes, mais continue de pr´ esenter des artefacts. Cet algorithme est fondamental ` a plusieurs

titres. D’une part, il est r´ eutilis´ e dans de nombreuses autres propositions ([Laroche94, Hibbard95, Kimmel99]...). D’autre

part, ce qui fait son originalit´ e et son pouvoir historique est qu’` a partir de cette proposition, la plupart des algorithmes

propos´ e ne vont plus utiliser de mani` ere ind´ ependante les canaux de couleurs, mais vont exploiter les relations entre les

canaux et plus particuli` erement leur intercorr´ elation.

(10)

2.5 Reconnaissance de forme

En parall` ele de la m´ ethode d’interpolation de teinte, Cok [Cok86-2] propose une m´ ethode d’interpolation bas´ ee sur la reconnaissance des formes. En effet, l’hypoth` ese de constance de teinte n’est plus valide ` a la fronti` ere entre les objets. Ce probl` eme est particuli` erement important et a connu de nombreuses propositions de solution. L’objectif de cette nouvelle m´ ethode est de classifier plusieurs types de formes de voisinage et de r´ ealiser une interpolation diff´ erente suivant le type de voisinage. D’apr` es lui, cette m´ ethode permet de repousser les erreurs d’interpolation dans les zones textur´ ees tel que l’ob- servateur humain ne peut les voire. Ceci ´ etant, cette m´ ethode est avant-gardiste de nombreuses autres, tˆ achant d’am´ eliorer l’interpolation des pixels verts suppos´ es responsables de l’´ echec partiel de la m´ ethode de constance des teintes. L’ensemble de ces m´ ethodes pour lesquelles l’algorithme s’adapte aux propri´ et´ es locales de l’image sont appell´ es adaptatifs.

Le texte original du brevet de Cok [Cok86-2] est difficile ` a interpr´ eter, nous avons donc plutˆ ot utilis´ e celui de la r´ ef´ erence suivante [Cok94], qui impl´ emente le mˆ eme algorithme. Adams [Adams95] d´ ecrit ´ egalement cette m´ ethode. Cok propose de classer les voisinages 3x3 en contours, bandes et coins (voir Figure 6). Pour interpoler le pixel vert X manquant, on applique la m´ ethode suivante :

1. Calculer la moyenne m des quatre plus proches voisins (voir Figure 6) d’un pixel vert manquant. Classifier chacun de ces pixels comme inf´ erieur (L), sup´ erieur (H) ou ´ egal (E) ` a la moyenne. Soient α β γ δ, les quatre pixels ordonn´ es en d´ ecroissance de leurs valeurs, calculer M ´ egale (β + γ)/2 la m´ ediane des quatre valeurs.

2. Classifier le pixel ` a interpoler comme contour, bande ou coin de la mani` ere suivante :

– Si les quatre voisins sont form´ es de 3 pixels H et 1 L ou 3 L plus 1 H, le voisinage est un contour.

– Si le voisinage est compos´ e de 2 H et 2 L adjacent deux ` a deux, c’est un coin.

– Si le voisinage est compos´ e de 2 H et 2 L oppos´ es deux ` a deux, c’est une bande.

– Dans les cas o` u un ou plus des pixels est classifi´ e ´ egal ` a la moyenne, c’est une bande si 2 H ou 2 L sont oppos´ es deux ` a deux, sinon, c’est un contour.

3. Pour un contour X = M

4. Pour une bande, soit x = 2M S, X = CLIP β γ (x) 5. Pour un coin, soit x = M (S M )/4, X = CLIP β γ (x)

O` u S, est la moyenne des huit pixels proches des quatre premiers (label A de la Figure 6). S est la moyenne de quatre des huit pixels proches suivants (label C de la Figure 6). Et X = CLIP β γ (x) d´ efinit par :

X =

x si γ x β β si β x γ si x γ

Cet algorithme est utilis´ e uniquement pour les pixels verts, les pixels rouges et bleus sont interpol´ es par la m´ ethode de constance de teinte. Il en est de mˆ eme pour la plupart des algorithmes suivants. En effet, il est suppos´ e que l’am´ elioration des algorithmes de d´ emosa¨ı¸ cage r´ eside principalement dans l’am´ elioration de l’interpolation des pixels verts. Les plans rouge et bleu sont suffisamment bien reconstruits avec la m´ ethode de constance de teintes.

Une illustration du r´ esultat de l’interpolation avec cette m´ ethode est montr´ e sur la Figure 5(b). Les r´ esultats sont

meilleurs que la m´ ethode de constante des teintes bas´ ee sur une interpolation bilin´ eaire du vert. Cependant, les r´ esultats

(11)

X H H H L X H L L H L L X H H

C o n t o u r B a n d e C o i n

X L L H H

A A A A

A A A A X H H L L C C C C

Fig. 6 – Illustration des formes propos´ ees par Cok, ainsi que de l’utilisation des huit voisins dans le cas d’une bande et d’un coin

ne sont pas ` a la hauteur des suppositions de Cok. Plus tard, il a propos´ e des m´ ethodes d’interpolations lin´ eaires des plans rouges et bleus utilisant le plan vert comme correcteur [Cok91-1, Cok91-2] qui ne sont pas d´ etaill´ ees ici.

L’utilisation du filtrage m´ edian pour l’interpolation a ´ egalement ´ et´ e propos´ ee par Freeman [Freeman88-1, Freeman88-2]

avec un algorithme beaucoup plus simple (quoique plus long ` a ex´ ecuter avec Matlab) et de bons r´ esultats de rendu. Dans sa version, Freeman propose d’interpoler lin´ eairement les pixels rouges, verts et bleus pour remplir les matrices, puis d’appliquer un filtrage m´ edian de voisinage 3 × 3 sur les diff´ erences de couleurs. Dans notre impl´ ementation, nous utilisons la m´ ediane des pixels voisins comme valeur interpol´ ee. Cela n´ ecessite de consid´ erer deux cas pour le rouge et le bleu, car si le pixel manquant est vert ou non, le voisinage change.

Les pixels verts manquants sont tout d’abord interpol´ es en utilisant la m´ ediane des quatre pixels verts voisins. Ensuite, les diff´ erences de couleurs rouge moins vert et bleu moins vert sont calcul´ ees aux positions des pixels rouges et bleus existants puis interpol´ e comme la m´ ediane des quatre pixels voisins. Le r´ esultat de cet algorithme est pr´ esent´ e ` a la Figure 7(a).

Acharya [Acharya00] a propos´ e r´ ecemment un algorithme utilisant le filtrage m´ edian des pixels voisins pour la classifi- cation et l’interpolation. Cette m´ ethode n’est pas ´ etudi´ ee dans cet article.

2.6 Interpolation directionelle utilisant le gradient

L’algorithme de reconnaissance des formes pr´ esent´ e au paragraphe pr´ ec´ edent est assez complexe et n´ ecessite de nombreux traitements pour interpoler chaque pixel. Pour simplifier la classification et les diff´ erentes m´ ethodes d’interpolation, Hibbard [Hibbard95] utilise le gradient horizontal et vertical autour du pixel manquant, calcul´ e ` a partir des pixels voisins existants.

L’id´ ee est de r´ ealiser une interpolation le long des contours et d’´ eviter une interpolation ` a travers eux. Par exemple, l’interpolation du pixel vert ` a la position (4,4), est la suivante :

1. Calcul du gradient horizontal et vertical ∆H = |G 43 G 45 | et ∆V = |G 34 G 54 | 2. Si ∆H > ∆V

G 44 = (G 34 + G 54 ) /2 Sinon, si ∆H < ∆V

G 44 = (G 43 + G 45 ) /2 Sinon,

G 44 = (G 43 + G 45 + G 34 + G 54 ) /4

(12)

Fig. 7 – (a) M´ ethode de filtrage m´ edian propos´ e par Freeman (30.54dB)(b) M´ ethode d’interpolation suivant la direction du gradient propos´ e par Hibbard (30.38dB).

Il est important de noter que les m´ ethodes utilisant le gradient sont tr` es utilis´ ees dans le d´ emosa¨ı¸ cage. Ces m´ ethodes sont judicieuses puisqu’` a chaque pixel manquant dans la matrice de Bayer, le gradient suivant deux directions est parfaitement connu ` a partir des pixels existants. Le r´ esultat de cette m´ ethode est pr´ esent´ e ` a la Figure 7(b).

Une d´ erivation de cette m´ ethode est propos´ ee dans [Laroche94], o` u le gradient au pixel vert manquant est estim´ e ` a partir d’un voisinage de pixels rouge ou bleu suivant la couleur du pixel pr´ esent ` a la position verte manquante correspondante.

Par exemple, pour l’interpolation du pixel vert ` a la position (4,4) il suffit de changer la fa¸ con dont le gradient est calcul´ e : 1. Calcul du gradient horizontal et vertical ∆H = |(R 42 + R 46 ) /2 R 44 | et ∆V = |(R 24 + R 64 ) /2 R 44 |

Le r´ esultats de cette m´ ethode de calcul est pr´ esent´ e sur la Figure 8(a).

2.7 Interpolation directionelle par le gradient corrig´ e du Laplacien

Hamilton et Adams [Hamilton97] proposent d’utiliser d’autres estimateurs pour la classification et l’interpolation des pixels. Dans cette impl´ ementation, ils utilisent un calcul de gradient sur les pixels verts et de Laplaciens sur les pixels rouges ou bleus. Leur m´ ethode pour l’interpolation du pixel vert G 44 est bas´ ee sur l’algorithme suivant :

1. Calculer ∆H = |G 43 G 45 | + |2R 44 R 42 R 46 | et ∆V = |G 34 G 54 | + |2R 44 R 24 R 64 | 2. Si ∆H > ∆V

G 44 = (G 34 + G 54 ) /2 + (2R 44 R 24 R 64 ) /4 3. Sinon, si ∆H < ∆V

G 44 = (G 43 + G 45 ) /2 + (2R 44 R 42 R 46 ) /4 4. Sinon,

G 44 = (G 43 + G 45 + G 34 + G 54 ) /4 + (4R 44 R 42 R 46 R 24 R 64 ) /8

Dans ce brevet, ils proposent ´ egalement une m´ ethode directionelle pour l’interpolation des pixels rouges et bleus. Nous

appliquons plutˆ ot la m´ ethode de constance des teintes. Un exemple d’interpolation avec cette m´ ethode est donn´ ee ` a la

(13)

Fig. 8 – (a) M´ ethode d’interpolation suivant la direction du gradient propos´ e par Laroche et al. (31.81dB). (b) M´ ethode propos´ ee par Hamilton et Adams, reconnaissance de formes par gradient vert corrig´ e du Laplacien de rouge ou bleu (34.20dB).

Figure 8(b). Nous voyons que cette m´ ethode donne de tr` es bons r´ esultats pour un temps de calcul raisonnable.

Adams et Hamilton [Adams96, Adam97-1] ont ensuite propos´ e plusieurs m´ ethodes plus sophistiqu´ ees, ` a partir de celle-ci, proposant alors plusieurs autres types de classifications et d’interpolateurs. Ces m´ ethodes sont bas´ ees sur l’int´ egration des ca- ract´ eristiques de l’algorithme de constance de teintes. Plus tard, Adams [Adams97-2, Adams98-1] donne une d´ emonstration de l’utilisation du Laplacien comme correction de l’interpolateur lin´ eaire. Sa d´ emonstration est forte int´ eressante parce qu’elle d´ ecrit un mod` ele math´ ematique du voisinage des couleurs dans le CFA qui fait intervenir la repr´ esentation en fr´ equences. Finalement, ils ont ´ egalement propos´ e r´ ecemment [Hamilton00] un nouvel algorithme bas´ e sur un lissage de l’image, une classification et une correction utilisant des filtres de convolution. Cette m´ ethode n’est pas trait´ ee dans cet article.

3 en´ eralisation du d´ emosa¨ı¸ cage

A partir des ann´ ees 90, la d´ efinition d’une cam´ era num´ erique comme micro-ordinateur embarqu´ e avec processeur g´ en´ eraliste, bus de donn´ ees, m´ emoire vive, de masse, syst` eme d’exploitation et syst` eme de gestion de fichiers se g´ en´ eralise.

Les contraintes de traitement embarqu´ e en ligne et temps-reel sont oubli´ ees laissant libre court ` a l’apparition de nouveaux algorithmes dont la priorit´ e est la meilleure reconstruction possible de l’image en d´ epit parfois de la vitesse de calcul. Nous avons choisi de s´ eparer la pr´ esentation de ces algorithmes, mˆ eme si ceux-ci utilisent souvent des r´ esultats d´ ecris pr´ ec´ edement et forment une continuit´ e logique.

Il existe deux cat´ egories d’algorithmes dans cette g´ en´ eration. Les algorithmes lin´ eaires pour lesquels le traitement cor-

respond ` a un filtrage lin´ eaire ou convolution avec un filtre et les algorithmes non lin´ eaires ou adaptatifs pour lesquels une

impl´ ementation par convolution n’est pas possible. L’avantage des algorithmes lin´ eaires est qu’il sont facile ` a impl´ ementer,

la complexit´ e ´ etant report´ ee dans le calcul du filtre. De plus, les processeur modernes poss` edent g´ en´ eralement des ins-

tructions sp´ ecialis´ e pour la convolution, laquelle s’effectue en un cycle de processeur par ´ el´ ement du filtre par pixel de

(14)

l’image. L’avantage des algorithmes non lin´ eaires est la qualit´ e de la reconstruction par l’utilisation d’apriori sur les images, d’it´ erations ou de propri´ et´ es locales dans les images.

3.1 Interpolation lin´ eaire ` a pond´ eration variable

Les m´ ethodes pr´ ec´ edentes de reconnaissance de forme ou d’interpolation directionnelles ont un temps de calcul qui d´ epend de l’image consid´ er´ ee puisque l’algorithme est bas´ ee sur des conditions, lesquelles peuvent prendre un temps d’ex´ ecution diff´ erent. D’autre part, il y a une s´ eparation entre la partie classification faite en amont et la partie inter- polation qui n´ ec´ essite une double lecture de l’image. Pour contourner ces effets, il a ´ et´ e propos´ e d’utiliser des m´ ethodes d’interpolation lin´ eaires g´ en´ eralis´ ees qui int` egrent la classification et l’interpolation. Par exemple pour interpoler le pixel vert ` a la position (4,4) on applique :

G 44 = E 43 G 43 + E 45 G 45 + E 34 G 34 + E 54 G 54

E 43 + E 45 + E 34 + E 54 (4)

O` u E ij est un fateur de pond´ eration calcul´ e sur l’image. Si ce facteur correspond ` a un estimateur de contour au point consid´ er´ e, l’interpolation s’adapte automatiquement au contour de l’image. Cette d´ emarche est adopt´ ee par de nombreuses

´

etudes. En particulier, [Lu03] propose une impl´ ementation pour laquelle un principe de constante de teinte est r´ ealis´ e.

D’autre part, [Li01] d´ ecrit une m´ ethode o` u l’estimation des seuils correspond ` a une calcul de la covariance dans les images

`

a plus basses r´ esolutions. Ces m´ ethodes ne seront pas d´ ecrites dans cet article.

Dans son article, Kimmel [Kimmel99] propose une fonction de mesure de contour pour E i,j , construite ` a partir des gradients. Pour l’interpolation d’un pixel P 1 ` a la position (i,j), on utilise la formule de l’Equation 4 pr´ ec´ edente, avec :

E i+k,j+ = 1

1 + D(P i,j ) 2 + D(P i+k,j+ ) 2 avec k [ −1 0 1 ] et [ −1 0 1 ] (5) avec D, les gradients horizontaux, verticaux et diagonaux d´ efinis par :

D x (P i,j ) = P i,j−1 P i,j+1

2 D y (P ij ) = P i−1,j P i+1,j

2 D xd (P i,j ) = P i−1,j+1 P i+1,j−1 2

2 D yd (P i,j ) = P i−1,j−1 P i+1,j+1 2

2 (6) Sa m´ ethode utilise ´ egalement l’algorithme de constance de teinte et une iteration pour am´ eliorer la convergence de la constance de teinte. Notons que les diff´ erences sont toujours calcul´ ees ` a partir du mˆ eme plan de couleur. Si le pixel P i,j est vert dans le CFA, alors les pixels utilis´ es sont verts et seuls les gradients diagonaux sont calcul´ es pour l’interpolation des pixels rouges et bleus ` a cette position. Le d´ etail de l’algorithme est ` a consulter dans la publication originale. Un exemple de reconstruction avec cet algorithme est pr´ esent´ e sur la Figure 9(a).

Muresan et Parks [Muresan02] proposent une interpolation diff´ erente pour les pixels verts ` a la premi` ere ´ etape, utilisant une m´ ethode de r´ ecup´ eration optimale bas´ ee sur l’estimation d’un m´ etrique ` a partir d’un ensemble d’entraˆınement.

De nombreux auteurs proposent des algorithmes qui peuvent ˆ etre class´ es dans cette cat´ egorie. Par exemple, Mukherjee et al. ajoutent une contrainte de m´ emoire, utilisant 2 ou 3 lignes de l’image pour r´ ealiser l’interpolation.

3.2 Reconstruction par filtrage direct dans le CFA

La m´ ethode que nous pr´ esentons dans cette section n’est pas ou peu cit´ ee dans la litt´ erature. Cependant, elle est particuli` erement int´ eressante puisqu’elle est lin´ eaire et qu’elle donne de bons r´ esultats. De plus, c’est ` a la connaissance de

1 Ici nous supposons ne pas connaˆıtre la couleur du pixel et l’appelons P

(15)

l’auteur, la premi` ere m´ ethode qui propose une interpolation directement dans l’image CFA, consid´ erant le voisinage de l’ensemble des pixels R, G, B sans r´ ealiser au pr´ ealable une s´ eparation des canaux. Cette m´ ethode est bas´ ee sur les travaux de E. Martinez-Uriegas, qui travailla avec Ingling sur un mod` ele de multiplexage spatio-temporel de la luminance et de la chrominance dans la r´ etine humaine [Ingling83]. En fait, la m´ ethode que nous pr´ esenterons dans la derni` ere section (4) a suivi le mˆ eme cheminement, de la mod´ elisation biologique ` a son application au traitement d’image. Curieusement, elle est

´

egalement bas´ ee sur une estimation directement dans l’image CFA.

Martinez-Uriegas avait d´ ej` a propos´ e une m´ ethode de compression d’image bas´ ee sur le multiplexage spatio-chromatique qui a donn´ e lieu ` a un pr´ ec´ edent brevet [Martinez95]. Il a ´ egalement propos´ e avec ses collaborateurs une m´ ethode de calcul de super r´ esolution [Peters96] d’une image avec trois composantes par pixels. Le principe de cette m´ ethode est d’arranger en voisinage les trois composantes couleurs d’une image couleur pour obtenir une image de type CFA. Ensuite, un algorithme de demosa¨ı¸ cage peut ˆ etre utilis´ e pour reconstruire une image couleur ` a plus grande r´ esolution. Enfin, il propose une m´ ethode de d´ emosa¨ı¸ cage que nous d´ etaillons ici.

Dans cette m´ ethode, les auteurs [Crane99] proposent d’utiliser des filtres de convolution qui s’appliquent directement dans l’image CFA pour interpoler chacun des plans couleur. En fait, il faut plusieurs filtres pour interpoler un plan, suivant le type de voisinage du pixel ` a interpoler. Ils d´ ecrivent ´ egalement dans ce brevet une m´ ethode simple pour la d´ etermination des filtres bas´ ee sur un crit` ere de constante de teinte qui est une simplification de l’algorithme pr´ esent´ e dans [Martinez95].

Dans leur brevet, une impl´ ementation pour une matrice particuli` ere appel´ ee Chromaplex est d´ etaill´ ee. Nous donnons ici la transposition pour la matrice de Bayer. Consid´ erons, par exemple, l’interpolation du pixel rouge ` a la position (3,3) de la figure 2. Appelons par des lettres minuscules les pixels devant ˆ etre interpol´ es et par des lettres majuscules les pixels existant d´ ej` a dans l’image CFA. L’exploitation de l’hypoth` ese de constance de teinte est r´ ealis´ ee de la mani` ere suivante :

r 33 = B 33 B ¯ + ¯ R (7)

O` u ¯ B et ¯ R sont les moyennes de bleu et de rouge dans le voisinage. Ces moyennes peuvent ˆ etre exprim´ ees ` a l’aide de pixels existants ou non existants dans le voisinage. On peut ´ ecrire :

r 33 = B 33 [B 33 + B 31 + B 13 + B 35 + B 53 ] /5 + [R 22 + R 24 + R 42 + R 44 ] /4 (8) En multipliant cette ´ equation par 20, on obtient le filtre correspondant avec des coefficients entiers.

1 20

0 0 −4 0 0

0 5 0 5 0

−4 0 16 0 −4

0 5 0 5 0

0 0 −4 0 0

(9)

Il est ` a noter qu’il existe plusieurs possibilit´ es pour la d´ etermination du filtre. Dans l’exemple pr´ ec´ edent, on aurait pu utiliser les pixels b 23 , b 32 , b 43 et b 34 , au lieu de B 33 , B 31 , B 13 , B 53 , qui bien qu’inexistants, peuvent ˆ etre d´ etermines par la mˆ eme m´ ethode. De cette mani` ere, on peut ´ etendre la taille des filtres ` a volont´ e. Pour ce travail, nous avons essay´ e plusieurs filtres et conserv´ e uniquement ceux qui donnent le meilleur r´ esultat pour l’image que nous utilisons.

Pour le cas du CFA de Bayer, nous avons plusieurs possibilit´ es ` a ´ etudier. L’exemple pr´ ec´ edent (Equ. 9) peut ˆ etre utilis´ e

pour l’interpolation des pixels rouges aux points bleus et l’interpolation des pixels bleus aux points rouges. Le premier

filtre suivant (Eq 10) sera utilis´ e pour interpoler les pixels rouges aux positions (2,3), (4,5), car les pixels rouges voisins

sont dispos´ es horizontalement, ou bleus aux positions (3,2) et (3,4) pour la mˆ eme raison. Le deuxi` eme filtre sera utilis´ e

(16)

Fig. 9 – (a) M´ ethode propos´ ee par Kimmel (33.20dB) (b) M´ ethode propos´ ee par Crane et al. (31.20dB)

pour l’interpolation des pixels rouges aux positions (3,2), (3,4) et bleus (2,3), (4,3). Le troisi` eme filtre sera utilis´ e pour l’interpolation des pixels verts ` a toutes les positions ou ils sont manquants.

1 80

0 0 −4 0 0

0 5 0 5 0

−4 −16 12 −16 −4

0 30 64 30 0

−4 −16 12 −16 −4

0 5 0 5 0

0 0 −4 0 0

1 80

0 0 −4 0 −4 0 0

0 5 −16 30 −16 5 0

−4 0 12 64 12 0 −4

0 5 −16 30 −16 5 0

0 0 −4 0 −4 0 0

1 100

0 0 4 0 4 0 0

0 −5 0 −10 0 −5 0

4 0 −8 25 −8 0 4

0 −10 25 60 25 −10 0

4 0 −8 25 −8 0 4

0 −5 0 −10 0 −5 0

0 0 4 0 4 0 0

(10)

La Figure 9 (b) montre un exemple de d´ emosa¨ı¸ cage par cette m´ ethode. Nous voyons que les r´ esultats sont satisfaisants pour un effort de calcul r´ eduit.

3.3 emosa¨ı¸ cage utilisant un mod` ele de formation d’image

Il existe plusieurs articles utilisant un mod` ele de formation d’image pour la restauration d’image. Dans [Angelopoulos94], cette m´ ethode est utilis´ ee pour la restauration des images d´ egrad´ ees par un flou de mouvement (motion-blur) et un bruit Gaussien de valeur moyenne nulle. Les bases du mod` ele d’image couleur sont donn´ ees dans cette r´ ef´ erence. Elles incluent la gestion des trois plans couleurs dans une repr´ esentation matricielle, tenant compte de la fonction d’´ etalement ponctuelle (PSF) de l’optique de la cam´ era. L’objectif est d’appliquer une d´ econvolution pour retrouver les caract´ eristiques de la lumi` ere incidente. La solution consiste ` a inverser num´ eriquement le mod` ele de formation d’image par minimisation de l’erreur moyenne au carr´ e (MMSE) entre l’image reconstruite et une r´ ef´ erence.

Dans le cas des images CFA, l’application des mod` eles de formation d’image a tout d’abord ´ et´ e ´ etudi´ ee dans le cas d’une m´ ethode Bay´ esienne. D. Brainard [Brainard94, Brainard95], propose le mod` ele d’image suivant :

y = Sx + e (11)

O` u y repr´ esente l’image ´ echantillonn´ ee par le capteur de la cam´ era avec une matrice de filtres couleurs d´ epli´ ee en

vecteur colonne. x est un vecteur colonne form´ e de la repr´ esentation d´ epli´ ee de l’image incidente i(x, y, λ). S est une

matrice compos´ ee des vecteurs colonnes form´ es de la repr´ esentation d´ epli´ ee des champs r´ ecepteurs de chacun des types de

(17)

capteur (R, G, B) dans la cam´ era, s(x, y, λ). Cette matrice permet de repr´ esenter le sous ´ echantillonnage dˆ u ` a la matrice de filtres couleurs. e repr´ esente le bruit du capteur.

Le probl` eme consiste ` a estimer le vecteur ˆ x ` a partir du vecteur de l’image ´ echantillonn´ ee d´ epli´ e y , ˆ x = f ( y ). Pour cela, on calcule la distribution de probabilit´ e a posteriori p(x|y) qui d´ etermine la distribution de probabilit´ e de x sachant y. On utilise la r` egle de Bayes pour estimer cette distribution de probabilit´ e de la mani` ere suivante :

p(x|y) = p(y|x)p(y) (12)

O` u p( x ) est la distribution a priori qui repr´ esente la vraisemblance de rencontrer chaque image possible. Cette distribu- tion relate ce qui est connu de l’image avant de savoir ce que le capteur a mesur´ e. Brainard justifie que l’a priori est souvent utilis´ e dans les m´ ethodes de reconstruction. Par exemple un filtre passe-bas comme l’interpolation bilin´ eaire est bas´ e sur l’a priori que l’image ne contient pas de fr´ equences au del` a de la limite de Nyquist du capteur. La seconde distribution de probabilit´ e est la vraisemblance des donn´ ees du capteur sachant l’image capt´ ee. Cette vraisemblance est une sp´ ecification du mod` ele de l’image. Dans ce cas, cette distribution est donn´ ee directement par l’´ equation 11 et s’´ ecrit :

p( y|x ) = N ( Sx , K e ) (13)

O` u N(Sx, K e ) est la distribution normale de moyenne Sx et de variance K e , variance du bruit du capteur. Pour estimer la distribution a priori, Brainard utilise un mod` ele lin´ eaire d’image incidente, x = Bw, o` u chaque image peut se d´ ecomposer comme une somme pond´ er´ e w d’images de bases B . Il suppose ´ egalement que w suit une loi Normale multi variable de moyenne u w et de covariance K w . Dans ce cas, la distribution a priori, p( x ), s’exprime par :

p( x ) = N ( Bu w , BK w B T ) (14)

Dans sa proposition, Brainard prend comme mod` ele de formation de l’image, la transformation d’une image couleur en trois composantes par pixel en une image avec une seule composante par pixel et le bruit du capteur. Taubman [Taubman00]

propose d’inclure aussi le filtrage passe-bas de la fonction d’´ etalement ponctuelle de l’optique de la cam´ era. Le mod` ele d’image est bas´ e sur un super pixel, ou cellule de base, qui, dans le cas de la matrice de Bayer, est compos´ e d’un voisinage 2x2. Par cette m´ ethode, il ´ evite d’expliciter pr´ ecis´ ement l’influence de la matrice dans la formation de l’image. Le mod` ele est le suivant :

y [ n ] = T [ n ] x [ n ] + δ[ n ] y ˆ ( w ) = ˆ T ( wx ( w ) + ˆ δ( w ) (15) La forme du mod` ele dans l’espace et dans le domaine de Fourier est donn´ ee. O` u T[n] est la r´ eponse impulsionnelle du mod` ele de cam´ era incluant l’optique et le mosa¨ı¸ cage, et ˆ T(w) sa transform´ ee de Fourier. y[n] est l’image repr´ esent´ ee en vecteur colonne mesur´ ee par le capteur, x [ n ] l’image incidente et δ[ n ] le bruit du capteur. La solution optimale est donn´ ee dans le domaine de Fourier par :

x ˆ LLMSE ( w ) = ˆ F ( wy ( w ) avec F ˆ ( w ) = Γ xy ( w ) Γ −1 y ( w ) (16) O` u Γ xy ( w ) et Γ y ( w ) sont des densit´ es spectrales de puissance estim´ ees ` a partir de la transform´ ee de Fourier des matrices d’intercorr´ elations entre l’image incidente et l’image mesur´ ee. Cette solution est la solution optimale au sens de Wiener.

Cependant, elle n´ ecessite l’inversion et la manipulation de matrices de grande dimension. Le mod` ele matriciel utilis´ e impose

de d´ eplier les images couleurs de dimension HW × 3 en vecteur de taille 3HW × 1. La minimisation est donc effectu´ ee

par une inversion d’une matrice 3HW × 3HW , qui n’est pas r´ ealisable simplement. Dans son article, Taubman propose

(18)

d’utiliser un crit` ere d’invariance d’´ echelle qui permet de calculer l’estimateur LLMSE de mani` ere ` a avoir une transform´ ee de Fourier continue et simplifier le calcul de la solution. Il propose ´ egalement d’utiliser un filtrage F de support fini pour la reconstruction. Il en d´ ecoule une m´ ethode pratique d’impl´ ementation de la solution.

Trussell [Trussell01, Trussell02] propose ´ egalement un autre mod` ele d’image qui donne explicitement le sous-´ echantillonnage par la matrice de filtre couleur. Son mod` ele s’´ ecrit :

y = C

HS T x + η

(17) O` u C repr´ esente le produit de Kronecker des matrices de sous-´ echantillonage unidimensionnelles compos´ ees de 0 et de 1 dans la diagonale. H repr´ esente le filtrage optique, S T la transformation de l’image incidente, d´ efinie pour chaque longueur d’onde discr` ete en un ensemble r´ eduit de composante correspondant ` a l’´ echantillonnage en longueur d’onde par les sensibilit´ es spectrales des filtres et η le bruit d’´ echantillonnage. La solution revient ` a trouver une matrice de convolution D telle que l’erreur moyenne au carr´ e Φ( D ) = E

x Dy 2

soit minimum. La solution est donn´ ee par : D = K xxλ SH T C T

CHS T K xxλ SH T C T + CK nn C T

−1

(18) O` u K xxλ est la matrice d’autocorr´ elation pour les d´ ependances spatiales et de longueur d’onde de l’image originale.

Cette solution parait simple, mais comme pr´ ec´ edemment, elle n´ ecessite l’inversion de matrices tr` es grandes. Dans son travail, Trussell arrive ` a r´ eduire le probl` eme en utilisant la transform´ ee de Fourier. La solution n´ ecessite une transform´ ee de Fourier de chaque plan couleur et 16x16 inversions de matrices dans le cas de la matrice de Bayer.

Ces m´ ethodes bas´ ees sur un mod` ele statistique et de minimisation de l’erreur ne sont pas faciles ` a impl´ ementer, sp´ ecialement ` a cause de la dimensionnalit´ e du probl` eme. Pour cette raison, nous ne proposons pas de comparaison pour ces m´ ethodes. De mˆ eme, il n’y a pas, dans les publications correspondantes, de simulations effectu´ ees et pr´ esent´ ees.

3.4 ethodes non lin´ eaire de d´ e-aliasing

Comme nous l’avons d´ ej` a discut´ e dans la section 2.3, les artefacts lors du d´ emosa¨ı¸ cage sont une cons´ equence de l’aliasing.

Topfer et al. [Topfer98] d´ ecrivent les motifs d’aliasing dans les plans rouge, vert et bleu sous ´ echantillonn´ es selon la matrice de Bayer, en utilisant la transform´ ee de Fourier. Ils montrent qu’il existe deux types d’artefacts, un lissage ` a cause de l’interpolation des pixels manquants utilisant les pixels voisins et l’apparition de fausses couleurs, cons´ equentes ` a la violation du th´ eor` eme d’´ echantillonnage et au d´ ecalage des pixels des plans couleur. Ansi, l’aliasing fait apparaˆıtre, ` a la reconstruction, des basses fr´ equences qui n’existaient pas auparavant et le d´ ecalage des pixels entre rouge, vert et bleu fait apparaˆıtre des lignes et des textures de couleur. Ils proposent ensuite une relecture des grandes classes d’algorithmes au regard des motifs d’aliasing et des m´ ethodes d’interpolation.

Topfer et al. justifient que les m´ ethodes lin´ eaires sont limit´ ees puisqu’elles ne peuvent pas r´ ealiser de d´ e-aliasing et discutent de l’avantage des m´ ethodes non lin´ eaires telles que celles bas´ ees sur la constance de teinte et la reconnaissance de formes. Mais, hormis les travaux de Adams, les m´ ethodes de reconnaissance de formes sont construites intuitivement et ne sont pas bas´ ees sur une description explicite de l’aliasing. Goltzbach et al. [Goltzbach01] proposent une m´ ethode de d´ e- aliasing directement issue des motifs d’alaising pour laquelle les hautes fr´ equences du plan vert sont artificiellement ajout´ ees au signaux rouge et bleu. En fait, on retrouve cette id´ ee bien auparavant dans le brevet de Dillon et Bayer [Dillon79-2]

pour lequel un filtrage passe-bas du vert est utilis´ e pour calculer les hautes fr´ equences du vert qui sont ensuite ajout´ ees aux

(19)

f x

f y

- 1 / 2

- 1 / 2 1 / 2

1 / 2 - 1 / 4

- 1 / 4 1 / 4

1 / 4 f x

f y

- 1 / 2

- 1 / 2 1 / 2

1 / 2 f x

f y

- 1 / 2

- 1 / 2 1 / 2

1 / 2

H H

V V

Fig. 10 – Motifs d’aliasing dans le cas de la matrice de Bayer. Le grand carr´ e repr´ esente la limite de Niquist pour la fr´ equence d’´ echantillonnage du capteur, toutes couleurs confondues (a) Motif d’aliasing pour les plans rouge et bleu. (b) Motif d’aliasing pour le plan vert. (c) Filtre passe-haut id´ eal pour l’extraction des hautes fr´ equences horizontales (H) et verticales (V) du plan vert

signaux rouge et bleu. La Figure 10(a)(b) illustre les motifs d’aliasing pour les plans rouges, verts et bleus. La Figure 10(c) montre les filtres id´ eaux pour la r´ ecup´ eration des hautes fr´ equences du vert dans les directions horizontales et verticales.

Dans leur article, Goltzbach et al. ne donnent pas de d´ etails sur les filtres utilis´ es. Nous avons donc choisi nos propres filtres pour l’estimation des hautes fr´ equences du vert ` a ajouter au rouge et bleu. Un exemple de reconstruction est donn´ e ` a la Figure 9. Le r´ esultat n’est pas tr` es satisfaisant pour une m´ ethode qui est suppos´ ee permettre de r´ eduire l’aliasing. Mais cela tient certainement ` a notre choix de filtre, en notant cependant que ces filtres sont difficiles ` a r´ ealiser.

3.5 Autres m´ ethodes

Il existe de nombreuses autres m´ ethodes dont nous ne donnerons pas le d´ etail dans cet article, mais qui m´ eritent d’ˆ etre cit´ ees tout de mˆ eme.

Gupta et Chen [Gupta01] utilisent un algorithme de filtrage m´ edian vectoriel pour le d´ emosa¨ı¸ cage. Pour cela, ils d´ efinissent un pseudo pixel compos´ e des trois valeurs voisines contenant une valeur de pixel rouge, vert et bleu. Ils d´ efinissent ensuite un vecteur de huit pseudo pixels pour interpoler les pixels rouges et bleus lorsque le vert est pr´ esent et seize pseudo pixels pour le cas o` u le rouge et le bleu sont pr´ esent. Les valeurs interpol´ ees correspondent ` a un vecteur ` a trois composantes rouge, vert et bleu correspondant au minimum de la distance Euclidienne avec les vecteurs de pseudo pixels. Cette m´ ethode semble donner de bons r´ esultats, mais la m´ ethode de d´ etermination du vecteur minimisant la distance avec le vecteur de pseudo pixels n’est pas d´ ecrite pr´ ecis´ ement et risque d’ˆ etre coˆ uteuse en temps de calcul.

Une m´ ethode bas´ ee sur des gradients sophistiqu´ es dans plusieurs directions a ´ et´ e propos´ ee par Chang et al. [Chang99].

Cette m´ ethode semble donner des r´ esultats meilleurs que celle de Hamilton et Adams [Hamilton97] d’apr` es les auteurs. Lu et

Tan [Lu01] donnent une extension de cette m´ ethode en utilisant plusieurs couches s´ electionn´ ees ` a partir d’une segmentation

de l’histogramme des plans couleurs. Kuno et al. [Kuno99] proposent une m´ ethode de classification de formes bas´ ee sur

un seuil de gradient et utilisant les basses fr´ equences horizontales et verticales pour l’interpolation du vert. Weerashinghe

et al. [Weerasinghe02] s´ eparent le canal vert en deux canaux, un, form´ e des pixels verts sur les lignes contenant des pixels

rouges, et l’autre, form´ e des pixels verts sur les lignes contenant des pixels bleus. Les pixels verts existants dans le CFA

Références

Documents relatifs

DECOUVRIR LE MONDE : Se repérer spatialement dans un espace délimité Compétences : Découper une image avec précision en respectant le

Cette appellation est une contraction de basis spline, une spline ´ etant une courbe polynomiale param´ etr´ ee par morceaux : elle est compos´ ee de plusieurs courbes (les patchs

La différence de couleur déterminée par CIE l*a*b*, entre deux couleurs dans le CIE espace, est la distance entre les positions de couleurs. Da* étant différence rouge/verte avec

— Si la particule est fixe, la force exerc´ee par l’eau fluctue avec une ´echelle de temps (de l’ordre de la dur´ee entre deux chocs) tr`es courte devant la dur´ee

• JPEG (progressif) pour une image avec des millions de couleurs, GIF ou PNG pour une image avec 256 couleurs maximum.. • Aplatissez vos images enregistrées pour le web (canal

Les paysages sont définis selon une fenêtre de 100m (2 pixels de 50m) autour d’un pixel donné. landform calculé avec une

Après avoir observé que les écrans recréent les couleurs à partir de trois sous-pixels rouge, vert et bleu, nous allons créer en Python une image que nous définirons pixel par

Par exemple, si on a deux images numériques, une d’un méga de pixels (1 million de pixels) et une image différente ayant 5 méga pixels de d'information dans l'image, la