Mercurial > ift6266
comparison transformations/Occlusion.py @ 144:c958941c1b9d
merge
author | XavierMuller |
---|---|
date | Tue, 23 Feb 2010 18:16:55 -0500 |
parents | a507adba0ce3 |
children | 72a2d431d047 |
comparison
equal
deleted
inserted
replaced
143:f341a4efb44a | 144:c958941c1b9d |
---|---|
9 bruit soit rajoute sur l'image originale, mais en plus pâle. | 9 bruit soit rajoute sur l'image originale, mais en plus pâle. |
10 | 10 |
11 Le fichier /data/lisa/data/ift6266h10/echantillon_occlusion.ft | 11 Le fichier /data/lisa/data/ift6266h10/echantillon_occlusion.ft |
12 (sur le reseau DIRO) est necessaire. | 12 (sur le reseau DIRO) est necessaire. |
13 | 13 |
14 Il y a 20% de chance d'avoir une occlusion quelconque. | 14 Il y a 30% de chance d'avoir une occlusion quelconque. |
15 | 15 |
16 Sylvain Pannetier Lebeuf dans le cadre de IFT6266, hiver 2010 | 16 Sylvain Pannetier Lebeuf dans le cadre de IFT6266, hiver 2010 |
17 | 17 |
18 ''' | 18 ''' |
19 | 19 |
59 | 59 |
60 def get_settings_names(self): | 60 def get_settings_names(self): |
61 return ['haut','bas','gauche','droite','x_arrivee','y_arrivee','endroit','rajout','appliquer'] | 61 return ['haut','bas','gauche','droite','x_arrivee','y_arrivee','endroit','rajout','appliquer'] |
62 | 62 |
63 def regenerate_parameters(self, complexity): | 63 def regenerate_parameters(self, complexity): |
64 self.haut=min(15,int(numpy.abs(numpy.random.normal(int(7*complexity),2)))) | 64 self.haut=min(15,int(numpy.abs(numpy.random.normal(int(8*complexity),2)))) |
65 self.bas=min(15,int(numpy.abs(numpy.random.normal(int(7*complexity),2)))) | 65 self.bas=min(15,int(numpy.abs(numpy.random.normal(int(8*complexity),2)))) |
66 self.gauche=min(15,int(numpy.abs(numpy.random.normal(int(7*complexity),2)))) | 66 self.gauche=min(15,int(numpy.abs(numpy.random.normal(int(8*complexity),2)))) |
67 self.droite=min(15,int(numpy.abs(numpy.random.normal(int(7*complexity),2)))) | 67 self.droite=min(15,int(numpy.abs(numpy.random.normal(int(8*complexity),2)))) |
68 if self.haut+self.bas+self.gauche+self.droite==0: #Tres improbable | 68 if self.haut+self.bas+self.gauche+self.droite==0: #Tres improbable |
69 self.haut=1 | 69 self.haut=1 |
70 self.bas=1 | 70 self.bas=1 |
71 self.gauche=1 | 71 self.gauche=1 |
72 self.droite=1 | 72 self.droite=1 |
73 | 73 |
74 #Ces deux valeurs seront controlees afin d'etre certain de ne pas depasser | 74 #Ces deux valeurs seront controlees afin d'etre certain de ne pas depasser |
75 self.x_arrivee=int(numpy.abs(numpy.random.normal(0,2))) #Complexity n'entre pas en jeu, pas besoin | 75 self.x_arrivee=int(numpy.abs(numpy.random.normal(0,2))) #Complexity n'entre pas en jeu, pas besoin |
76 self.y_arrivee=int(numpy.random.normal(0,3)) | 76 self.y_arrivee=int(numpy.random.normal(0,3)) |
77 | 77 |
78 self.rajout=numpy.random.randint(0,self.longueur) #les bouts de quelle lettre | 78 self.rajout=numpy.random.randint(0,self.longueur-1) #les bouts de quelle lettre |
79 self.appliquer=numpy.random.binomial(1,0.2) ##### 20 % du temps, on met une occlusion ##### | 79 self.appliquer=numpy.random.binomial(1,0.4) ##### 40 % du temps, on met une occlusion ##### |
80 | 80 |
81 if complexity == 0: #On ne fait rien dans ce cas | 81 if complexity == 0: #On ne fait rien dans ce cas |
82 self.applique=0 | 82 self.applique=0 |
83 | 83 |
84 self.endroit=numpy.random.randint(-1,2) | 84 self.endroit=numpy.random.randint(-1,2) |