Skip to content

Commit 7a2dc2f

Browse files
author
remi.paucher
committed
Commit des modifs sur le GUI de ce matin + rajout Egoshare_5_TestPerf.py
1 parent e6640e5 commit 7a2dc2f

File tree

3 files changed

+73
-5
lines changed

3 files changed

+73
-5
lines changed

Egoshare_4_GUI.py

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@ def OnLaunch(self, evt):
254254
return
255255
if not self.model_selected:
256256
wx.MessageBox("Selectionner le modele SVM !", "Donnee manquante")
257-
#return
257+
return
258258

259259
thread.start_new_thread(Break_Egoshare_Captcha.break_captcha,
260260
(self.model, self.letter1_algo, self.letter2_algo, self.letter3_algo, self))
@@ -272,7 +272,12 @@ def OnSelectModel(self, evt):
272272

273273
if retour == wx.ID_OK and fichier != "":
274274
self.model = Break_Egoshare_Captcha.load_model(self.chemin, self, fichier)
275-
self.Update()
275+
self.Update()
276+
277+
if self.captcha_selected and self.model_selected:
278+
#Lancement du calcul
279+
self.OnLaunch(None)
280+
276281

277282

278283

@@ -292,7 +297,16 @@ def OnSelectCaptcha(self, evt):
292297
self.setThumbs(self.letter1, self.letter2, self.letter3)
293298
self.captcha_selected = True
294299
self.setResults("", "", "", "", "", "")
295-
self.Update()
300+
301+
self.Update()
302+
303+
if self.captcha_selected and self.model_selected:
304+
#Lancement du calcul
305+
self.OnLaunch(None)
306+
307+
308+
309+
296310
###############################################################################
297311
###############################################################################
298312

Egoshare_5_TestPerf.py

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
#!coding: utf-8
2+
from Break_Egoshare_Captcha import *
3+
4+
MODEL_FOLDER = 'Egoshare/Models'
5+
MODEL_FILES = ['simulation_based_C=1000_KERNEL=1.svm']
6+
TEST_FOLDER = 'Egoshare/DBTest-Captcha_based'
7+
8+
try:
9+
print MODEL_FILE
10+
except:
11+
pass
12+
else:
13+
MODEL_FILES = [MODEL_FILE]
14+
15+
set_files_errors = set([])
16+
17+
for MODEL_FILE in MODEL_FILES:
18+
model = load_model(os.path.join(MODEL_FOLDER, MODEL_FILE))
19+
20+
nbs = 0
21+
errors = 0
22+
for folder, subfolders, files in os.walk(TEST_FOLDER):
23+
if (folder[0] != "."):
24+
loaded = False
25+
for file in [file for file in files if 'bmp' in file]:
26+
if not loaded:
27+
print "Testing on ", folder
28+
loaded = True
29+
30+
im = Image.open(os.path.join(folder, file))
31+
im = im.point(lambda e : e/255)
32+
33+
char, max_score, scores = predict(model, im)
34+
35+
if char == folder[-1]:
36+
#print "SUCCESS"
37+
pass
38+
else:
39+
#print "FAILURE"
40+
set_files_errors.add(file.split('number')[0])
41+
#print "Error: ", char, "detected instead of", folder[-1]
42+
nbs += 1
43+
44+
45+
nb_errors = len(set_files_errors)
46+
nb_captchas_tested = nbs/3
47+
print "\tSuccess rate: ", (1 - (1.*nb_errors/nb_captchas_tested))*100, "%"
48+
print
49+
write(MODEL_FILE + '\t' + str((1 - (1.*nb_errors/nb_captchas_tested))*100) + "%")
50+
51+
52+
53+
54+
55+

characters_center.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@
99
TRAINING_FOLDER = "Egoshare/DBTraining-Simulation_based"
1010

1111
for folder, subfolders, files in os.walk(TRAINING_FOLDER):
12-
loaded = False
13-
12+
1413
print folder
1514

1615
if os.name == "nt":

0 commit comments

Comments
 (0)