2010-11-22 4 views
1

J'ai besoin de manipuler une image de sorte qu'un sous-rectangle de celui-ci soit retourné ou tourné par rapport au reste de l'image. Voici un exemple:Comment effectuer de nombreuses opérations aléatoires sur un ensemble d'images?

alt text

Cette manipulation doit se produire à plusieurs reprises, chaque fois que la production d'une nouvelle image de l'original modifié (plutôt que d'appliquer des modifications successives à une image).

La taille du sous-rectangle doit varier de façon systématique (par incréments de 5% de 10% à 75%, par exemple) et l'emplacement du sous-rectangle doit varier de façon aléatoire. Enfin, cette procédure doit être réalisée sur un grand nombre d'images.

Comment procéder?

Mes options sont PHP, C# ou batching dans Gimp. Cela dit, je suis prêt à apprendre quelque chose de nouveau s'il y a une approche particulièrement sensée.

+0

Demander: Comment retourner et faire pivoter un sous-rectangle en C#. Non: Devinez mon langage de programmation préféré et envoyez-moi les codes. – dtb

+0

Vous pouvez le faire avec imagemagick (pas besoin d'aller aussi loin que le gimp). Probablement pas l'approche la plus efficace, cependant. – Sorpigal

+0

@dtb: vous avez mal orthographié "codez". – NotMe

Répondre

2

Id dire aller avec C# et écrivez-vous un peu utilitaire. La classe Graphics peut avoir toutes les méthodes dont vous avez besoin.

Id vous suggérons de regarder les fonctions DrawImage et RotateTransform.

+1

Merci. Ce sont les indications que j'avais après. –

0

Vous pouvez prendre votre langue préférée, ils seront tous capables, le coder et l'exécuter?

+0

Cette réponse n'est pas utile. – dtb

+1

La question n'est pas vraiment spécifique donc je ne suis pas sûr de ce qu'il veut et donne une réponse directe? –

1

Est-ce quelque chose qui doit être fait par programme ou est-ce une affaire ponctuelle?

Si cela est programmé, cela peut * être * fait en PHP en utilisant la bibliothèque GD, mais ce ne sera pas facile ou rapide, car vous devrez écrire une routine pour déplacer manuellement les pixels.

Un résumé des « easyness » de votre demande basée sur une approche de la bibliothèque PHP GD:

  • manipulation se produit plusieurs fois, chaque fois que la production d'une nouvelle image modifiée de l'original: facile
  • Taille des besoins sous-rectangle pour faire varier systématiquement, facile
  • Emplacement du sous-rectangle doit très au hasard, facile
  • en image rotation difficulté modérée et lente
  • L'exécution de cette sur un grand nombre d'images, facile

Je n'ai pas assez d'expérience en C# de Gimp pour vous donner une définitive réponses là-bas; Pardon.

Questions connexes