Ressources pour la distorsion de l'image algorithmes
Où puis-je trouver des algorithmes pour les distorsions d'image? Il y a tellement d'infos de Flou et d'autres classiques des algorithmes, mais si peu plus complexes. En particulier, je suis intéressé dans le tourbillon de l'effet de distorsion de l'image de l'algorithme.
Vous devez vous connecter pour publier un commentaire.
Je ne trouve pas de références, mais je peux donner une idée de base de la façon dont les effets de distorsion de travail.
La clé de la distorsion est une fonction qui prend deux coordonnées (x,y) dans l'image déformée, et les transforme en coordonnées (u,v) dans l'image d'origine. Ceci indique que la fonction inverse de la distorsion, puisqu'il prend la déformation de l'image à l'image originale
Pour générer l'image déformée, on boucle sur x et y, calcule le point (u,v) de (x,y) à l'aide de l'inverse de la fonction de distorsion, et définit les composantes de couleur (x,y), être la même que celle en (u,v) dans l'image d'origine. Un ususally utilise l'interpolation (par exemple http://en.wikipedia.org/wiki/Bilinear_interpolation ) pour déterminer la couleur à (u,v), puisque (u,v), habituellement, ne se situent pas exactement sur le centre d'un pixel, mais plutôt à certaines fractions de point entre les pixels.
Un tourbillon est essentiellement une rotation dont l'angle de rotation dépend de la distance à partir du centre de l'image. Un exemple serait:
Ici, je suppose pour simplifier que le centre du tourbillon est à (0,0). Le tourbillon peut être mis n'importe où en soustrayant le tourbillon de la position des coordonnées de x et de y avant la distorsion de la fonction, et en les ajoutant à u et v d'après elle.
Il y a différents effets de turbulence autour: certains (comme ci-dessus) tourbillon seulement une zone localisée, et le montant de la turbulence diminue vers le bord de l'image. D'autres augmentent la tourbillonnant vers le bord de l'image. Ce genre de chose peut être fait en jouant sur l'angle= de ligne, par exemple
Il y a une implémentation Java de nombreuses images des filtres et des effets à Jerry Java de Filtres d'Image. Peut-être que vous pouvez prendre de l'inspiration à partir de là.
Le tourbillon et d'autres sont d'une matrice de transformation sur les emplacements de pixels. Vous créez une nouvelle image et d'obtenir la couleur à partir d'une position sur l'image que vous obtenez à partir de la multiplication de la position actuelle par une matrice.
La matrice dépend de la position actuelle.
ici est un bon CodeProject montrant comment le faire
http://www.codeproject.com/KB/GDI-plus/displacementfilters.aspx
il y a une nouvelle bibliothèque graphique ont beaucoup de fonctionnalité
http://code.google.com/p/picasso-graphic/
Prendre un coup d'oeil à ImageMagick. C'est une conversion d'image et d'édition de boîte à outils et dispose d'interfaces pour toutes les langues populaires.
L'-déplacer l'opérateur peut créer des tourbillons avec la bonne carte de déplacement.
Si vous êtes pour une raison pas satisfait avec ImageMagick interface, vous pouvez toujours jeter un oeil au code source de l'filtres et aller à partir de là.