2 votes

Distorsion Shephard pour 2 points de contrôle déforme l'image entière - ImageMagick Iphone sdk

J'essaie d'implémenter la distorsion Shephards dans l'iphone. Voici mon code :

const double ctrlPts[8] = {125,200 ,150,150, 255,150, 150, 150};
const size_t q = 8;
MagickDistortImage(magick_wand, ShepardsDistortion , q, ctrlPts, MagickFalse);

Voici mon résultat

La première est l'image originale et la seconde est l'image déformée.

Original ImageDistorted Image

Je veux juste déplacer un pixel vers un autre emplacement. Je n'arrive pas à comprendre où je fais des erreurs.

J'essaie de donner des distorsions multi-points et des distorsions libres à partir de ceci. enlace

1voto

deanWombourne Points 26066

Est-ce simplement parce que vous faites légèrement glisser l'image au centre et qu'elle ne sait pas quoi mettre dans l'espace ?

Essayez de définir les coins à fixer :

const double ctrlPts[24] = {
  // Points to move
  125,200 ,150,150, 255,150, 150, 150,

  // Points to fix
  0,0,0,0,   320,0,320,0,   320,460,320,460,    0,460,0,460
};

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X