Mercurial > ift6266
diff transformations/DistorsionGauss.py @ 90:e352a98fcc0a
Il y a maintenant une proba de 0.3 d'effectuer le bruitage. De plus, comme cette nouvelle fonctionnalite demande un parametre non-deterministe, les deux fonctions 'determined_by_complexity' ont ete enlevees. Le module se comporte comme un module conventionnel
author | SylvainPL <sylvain.pannetier.lebeuf@umontreal.ca> |
---|---|
date | Thu, 11 Feb 2010 09:08:16 -0500 |
parents | aee278ebc827 |
children | 901ab3329064 |
line wrap: on
line diff
--- a/transformations/DistorsionGauss.py Thu Feb 11 09:01:03 2010 -0500 +++ b/transformations/DistorsionGauss.py Thu Feb 11 09:08:16 2010 -0500 @@ -5,6 +5,8 @@ Ajout d'une composante aleatoire dans chaque pixel de l'image. C'est une distorsion gaussienne de moyenne 0 et d'écart type complexity/10 +Il y a 30% d'effectuer le bruitage + Sylvain Pannetier Lebeuf dans le cadre de IFT6266, hiver 2010 ''' @@ -16,24 +18,29 @@ def __init__(self): self.ecart_type=0.1 #L'ecart type de la gaussienne + self.effectuer=1 #1=on effectue et 0=rien faire def get_settings_names(self): - return [] + return ['ecart_type','effectuer'] - def get_settings_name_determined_by_complexity(self): - return ['ecart_type'] +## def get_settings_name_determined_by_complexity(self): +## return ['ecart_type'] def regenerate_parameters(self, complexity): self.ecart_type=float(complexity)/10 + self.effectuer =numpy.random.binomial(1,0.3) ##### On a 30% de faire un bruit ##### return self._get_current_parameters() def _get_current_parameters(self): - return [] + return [self.ecart_type,self.effectuer] - def get_parameters_determined_by_complexity(self, complexity): - return [float(complexity)/10] +## def get_parameters_determined_by_complexity(self, complexity): +## return [float(complexity)/10] def transform_image(self, image): + if self.effectuer == 0: + return image + image=image.reshape(1024,1) aleatoire=numpy.zeros((1024,1)).astype('float32') for i in xrange(0,1024):