miniatura|Filtre Mosaic de Bayer sobre sensor miniatura|Patró resultant del filtrat amb el Filtre Bayer

El Filtre Mosaic de Bayer és un filtre matricial de color que determina el color primari (RGB) de cada cel·la del fotosensor (CCD o APS). El seu nom el deu al seu inventor, el Doctor Bryce E. Bayer de l'empresa Eastman Kodak. La distribució de colors en el sensor que aplica el Filtre Bayer no és igualment proporcional als tres colors primaris RGB, sinó que és de 25% Vermell (R), 50% Verd (G) i 25% Blau (B) donant més importància al color verd per raons físiques del Sistema Visual Humà, ja que els humans som més sensibles a les components freqüencials properes als tons verds. En Bryce Bayer anomena a les cel·les verdes del fotosensor els elements sensibles a la luminància, i les cel·les roges i blaves els elements sensitius a la crominància.

Podríem pensar que si necessitem obtenir tres components de color (RGB) per cada píxel, necessitaríem tres sensors, un per cada component. La motivació principal d'utilitzar el Filtre Mosaic de Bayer és la d'obtenir la imatge en color amb un únic sensor + un Filtre Mosaic de Bayer. Aquestes cel·les o elements seran els píxels finals de la imatge després d'un procés de demosaicing que es basarà en interpolacions entre els valors dels elements resultants del filtre Bayer.

Alternatives al Filtre de Bayer El Filtre Mosaic de Bayer és el filtre matricial de color més usat comercialment en tot el món, no obstant existeixen altres filtres derivats del filtre de bayer com el filtre RGBW (Red, Green, Blue, White) o el filtre RGBE (Red, Green, Blue, Emerald) que utilitzen algorismes de demosaicing semblants. També hi ha altre filtres com el filtre CYGM (Cyan, Yellow, Green, Magenta) o el filtre CMYW (Cyan, Magenta, Yellow, White). Altres sistemes totalment diferents serien el Foveon X3 sensor, que es basa en un sensor per capes verticals; o simplement la utilització de tres sensors separats.

Filtre de Bayer amb cel·les "Pancromàtiques" Una manera que els mateixos desenvolupadors de Kodak van adonar-se que millorava el filtre de bayer quant a l'increment de la sensibilitat de la llum en el sensor era incloure-hi algunes cel·les anomenades pancromàtiques que són capaces de capturar totes les components freqüencials (totes les longituds d'ona) de la llum visible, és a dir, cel·les blanques. A aquest nou filtre se'l va anomenar filtre RGBW (Red, Green, Blue, White). També existeix el filtre CMYW que és l'anàleg en colors subtractius.

Captació a base de Microlents i Miralls Dicroics Una altra possible solució que l'empresa Nikon Corporation va desenvolupar fou col·locar una sèrie de microlents sobre un triplet de fotoreceptors. La longitud d'ona corresponent a cadascuna de les components RGB és separada i se la fa passar pel fotoreceptor específic. Aquest encaminament de la llum s'efectua amb miralls dicroics. Podríem pensar que el que fem és agafar la part de la llum corresponent a cadascuna de les components freqüencials i "ficar-la" en la part del receptor sensible a aquella component. Amb aquest sistema emulem la recepció amb 3-CCD (tres fotosensors, un per cada component RGB) i, per tant, la qualitat de la imatge captada és teòricament superior, ja que no s'efectuen processos de demosaicing i es redueix la pèrdua de lluminositat per l'absència de filtres d'ona.

Filtre Vertical de Color Foveon Una altra manera de separar el color, sovint anomenat filtre color vertical, és el sensor Foveon X3. El sensor Foveon té tres nivells de silici diferenciats cadascun dels quals capten un component de color RGB (una longitud d'ona) diferent. Així en resulta una matriu de color diferent en cadascun dels nivells del sensor sense utilitzar cap filtratge i per tant, sense perdre lluminositat.

Demosaicing (o Reconstrucció) Després de la captació de la imatge i un cop filtrada pel Filtre de Bayer on tenim una única component de color en cada píxel, s'aplica un procés de Demosaicing o reconstrucció de la imatge per tal de tenir els tres components de color en cada píxel per tenir així la imatge en color RGB. Per dur això a terme, s'apliquen a la imatge Bayer un o algorisme o altre segons la qualitat que vulguem obtenir i la potència del nostre processador.

Demostració Gràfica Primerament veiem de forma il·lustrativa el procés de demosaicing.

Imatge Original Aquesta primera imatge correspon a la imatge real que hauria de captar el sensor de la càmara o el que captaria una càmera amb tres sensors (3CCD), és a dir, el que veurien els ulls del fotògraf i que voldrà capturar amb la càmera.

center|miniatura|481px|Imatge Original

Imatge Bayer Després de filtrar la imatge amb el Filtre de Bayer, obtenim aquesta imatge que anomenarem Imatge Bayer. En aquesta imatge, cada píxel té un únic valor corresponent al component RGB pel qual s'ha filtrat. Així en cada píxel només tenim una quantitat de vermell(R), o verd(G), o blau(B) o també podem tenir el negre, que significa absència de llum (absència d'energia lumínica en la captació).

centre|miniatura|481px|Imatge Bayer

Com podem veure en l'ampliació, en les zones blanques s'hi veu perfectament el patró del filtre de Bayer.

centre|miniatura|433px|Detall de la Imatge Bayer

Si separem la imatge per canals de color (RGB), veurem fàcilment que tenim més quantitat de verd que de blau i vermell.

miniatura|center|270px|Detall del canal Vermell miniatura|center|270px|Detall del canal Verd miniatura|center|270px|Detall del canal Blau

Imatge Demosaiced (o Reconstruïda) A partir de la Imatge Bayer, hem de reconstruir la Imatge Original. Això es pot fer amb diversos processos algorítmics basats en interpolacions dels valors dels píxels de la Imatge Bayer, com s'explica més endavant.

Aquest seria el resultat de la nostra imatge aplicant un processament No-adaptatiu d'interpolació lineal.

center|miniatura|481px|Imatge Demosaiced miniatura|center|Detall de la Imatge Demosaiced

Podem veure que la imatge que hem recuperat no és ni de bon tros l'original, ja que es poden distingir falsos relleus i falsos colors al voltant de les lletres i les rodones blaves, i un lleuger desenfoc en la imatge en general. També es crea un fals contorn a la vora de la imatge. En canvi, en les zones de color homogeni com el blanc de fons, l'interior de les lletres gruixudes i l'interior dels cercles el color es recupera perfectament.

El gran problema del Demosaicing és que si utilitzem algorismes molt senzills, obtenim bons resultats en les zones uniformes i homogènies (sense gaires canvis, baixa freqüència espacial) però obtenim resultats poc òptims en els relleus i zones amb molts detalls (zones molt canviants, alta freqüència espacial). En aquestes zones amb vores, apareixen falsos relleus i rugositats, és a dir, disminueix la resolució de la imatge. Aquests efectes són realment preocupants en imatges emprades en aplicacions que utilitzen tècniques de creació d'imatge 3D a partir d'imatges 2D (creació de volums a partir de relleus), com moltes aplicacions mèdiques, militars, d'investigació...

Algorismes de Demosaicing Com ja hem dit, per reconstruir la imatge a partir de la Imatge Bayer hem d'efectuar un procés de Demosaicing a través d'algorismes més o menys complexos que ens donaran resultats més o menys acurats. Els algorismes simples ens donaran un resultat pobre i de baixa qualitat però el cost processal i, per tant, l'energia emprada en el càlcul serà molt petita; per contra, dels algorismes més complexes n'obtindrem una qualitat més òptima a canvi d'un cost processal més elevat i, per tant, un cost energètic més gran i la necessitat d'un processador més potent.

Bàsicament hi ha dos tipus d'algorismes de demosaicing, els No-Adaptatius i els Adaptatius:

Algorismes No-Adaptatius Els Algorismes No-Adaptatius són aquells que apliquen una algorítmica fixa independentment de la imatge o part de la imatge que processin. Són els algorismes més senzills, ja que no fan cap estudi previ de les característiques de la imatge i, per tant, sempre apliquen el mateix processament. Així doncs, gràcies a la seva senzillesa són molt fàcilment implementables i tenen un cost processal i energètic baix. Per contra, al no adaptar-se a les característiques de la imatge, tenen una qualitat baixa.

Rèpliques de Veí Proper:

Aquest és el processament més senzill i simplement es basa a recórrer la imatge i en els píxels on no hi ha informació d'un component RGB, s'agafa el mateix valor del píxel més proper del mateix component i es copia. Si hi ha dos o més píxels del component en qüestió a igual distància, se segueix una regla aleatòria de selecció (per exemple, sempre prioritzem els píxels d'una fila superior i una columna més a l'esquerra). Evidentment és l'algorisme més ràpid, ja que no es fa ni un sol càlcul, simplement s'omplen els forats buits.

Interpolació Bilineal:

Aquest processament és molt semblant a l'anterior però en comptes de copiar el mateix valor del píxel més proper del mateix component de color, es mira els valor dels píxels més propers i com normalment hi haurà 2 o 4 píxels a la mateixa distància, es fa la mitja aritmètica i el resultat és el nou valor del píxel.

Transició de Tonalitat Suavitzada:

El que pretén aquest algorisme és corregir un dels problemes de la Interpolació Bilineal i és que creava relleus de color en la interpolació dels components blau i vermell dels píxels. En les imatges, els píxels verds bàsicament duen la informació de lluminositat, i els vermells i blaus de color o tonalitat. El que fa l'algorisme de Transició de Tonalitat Suavitzada és tractar la imatge per canals de color. Així al canal verd hi aplica una interpolació lineal que s'ha de fer al principi perquè del resultat d'aquesta en depèn el dels altres canals. En el canal blau i en el vermell, el que fa és calcular la mitjana dels píxels del component però dividit pel valor del píxel verd en aquella posició. Així se suavitza segons la quantitat de llum (canal verd) el nivell de tonalitat o color (canals vermell i blau) i es redueix la creació de falsos relleus de color.

Transició Logarítmica de Tonalitat Suavitzada:

Es fa el mateix que en l'algorisme anterior però es treballa amb el valor logarítmic dels píxels (si un píxel té valor de verd G, es transforma a valor de verd G'=log(G)). Primer es calcula el canal verd amb els valors en logaritmes i després es calculen els canals blau i vermell com la mitjana dels píxels del canal dividit pel valor de verd en aquell píxel (tot en logaritmes). Finalment, amb els valors finals dels tres component R'G'B' de cada píxel se'ls hi fa l'antilogaritme per recuperar el valor correcte expressat de forma lineal RGB. El fet de treballar en base logarítmica és que suavitza encara més la creació de falsos relleus de color.

Algorismes Adaptatius Els Algorismes Adaptatius són per contra, algorismes més complexos que fan una anàlisi de les característiques de la imatge o part de la imatge i depenent d'aquests paràmetres avaluats apliquen un tipus de processament o altre per tal que s'adeqüi a aquesta imatge i poder així obtenir el resultat més òptim. Aquests algorismes són més complexos i, per tant, tindran un cost processal i energètic major. No obstant és evident que s'obtindrà un resultat molt més exacte i de més alta qualitat.

Interpolació amb Detecció de Vores:

El Sistema Visual Humà és molt sensible a les vores i relleus que formen les imatges i és justament en les vores on els Algorismes No-Adaptatius tenen les mancances més notables. Així que l'algorisme adaptatiu primer va ser aquell que detectava vores per tal d'aplicar en aquella zona el processament més adequat. De fet en la Interpolació amb Detecció de Vores no es crea cap algorisme nou, sinó que primer es fa un "escombrat" de la imatge i s'aplica un Algorisme de Detecció de Vores i segons si hi ha o no un relleu es dona un valor a una variable llindar per aquell píxel.