Quand on "floute" une image, on applique un filtre, matérialisable sous la forme d'une matrice.
La plus simple de toutes est la matrice qui effectue la moyenne des pixels environnants. La forme générique mathématique est la suivante :
Pour illustrer le propos prenons un exemple et faisons varier n (la taille du voisinage donc). Nous avons successivement n=1, n=3, n=5, n=7.
Et alors ? Bien, il serait sympa de pouvoir déflouter ces images... Sauf que voilà, comme tout bon filtre de dissimulation qui se respecte, moins il est réversible, plus il puissant.
Une matrice qui s'inverse implique en gros que le filtre ne perd rien de l'image. Ce n'est pas le cas ici puisque la moyenne tue le détail de l'information. C'est comme si en connaissant la moyenne de classe vous pouviez déterminer les notes de chacun des élèves. C'est impossible...
Pour savoir si le filtre est réversible, il suffit de calculer le déterminant de sa matrice. Il ne doit pas être nul. Dans notre exemple, la matrice est singulière.
Des flous plus élaborés sont ceux dit gaussiens. Ils lissent le bruit de l'image mais servent aussi pour le floutage ou la détection de contours. Ces filtres se calculent très facilement et utilisent une loi normale dont les deux paramètres ont été préalablement fournis. Réversible ? Après un difficile calcul (ohlala que non en fait ), il s'avère que non. En fait, cette matrice est même symétrique horizontalement et verticalement, ce qui ne favorise pas du tout la fonction d'inversion.
Et même si on trouvait une matrice dont on peut calculer l'inverse, vous risquez fort d'avoir affaire à des problèmes de couleur. Par exemple: contrairement au filtre moyen (et non pas médian, attention!), les valeurs de la matrice gaussienne ne sont pas nécessairement comprises dans l'intervalle [0..1]. Ce qui fait que les couleurs calculées débordent des habituelles 256 couleurs par canal.