From b67f78306feb27b7ddd7a3f28318a703675f3a95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9andre=20Chamberland-Dozois?= Date: Fri, 21 Dec 2018 17:08:26 -0500 Subject: [PATCH] update --- Projet/Bootstrap.py | 5 +---- Projet/BoundaryTracing/BoudaryTracing.py | 12 +----------- Projet/Pipeline/Pipeline.py | 4 ---- .../__pycache__/Pipeline.cpython-35.pyc | Bin 1281 -> 1154 bytes Projet/README | 7 +++++++ Projet/TrainedModel/model.txt | 8 ++++++++ Projet/__pycache__/Bootstrap.cpython-35.pyc | Bin 2226 -> 2135 bytes Projet/asl_alphabet_test/B_test.jpg | Bin 11736 -> 3547 bytes Projet/asl_alphabet_test/L_test.jpg | Bin 11662 -> 4595 bytes Projet/configure.sh | 6 ++++++ 10 files changed, 23 insertions(+), 19 deletions(-) create mode 100644 Projet/README create mode 100644 Projet/TrainedModel/model.txt create mode 100644 Projet/configure.sh diff --git a/Projet/Bootstrap.py b/Projet/Bootstrap.py index 829fd23..d22ce04 100644 --- a/Projet/Bootstrap.py +++ b/Projet/Bootstrap.py @@ -44,6 +44,7 @@ def run(self): nw_letter = i[0] nw_desc = [float(j) for j in re.findall(r"[\d.]+", i)] dist_actu = DescriptorGenerator.distance(desc_i, nw_desc) + print(dist_actu, ' ', nw_letter) if dist_actu < min_diff: min_diff = dist_actu letter_actu = nw_letter @@ -54,10 +55,6 @@ def run(self): else: img = np.asarray(Image.open(p['input_image']).convert('L')) res = Pipeline().run(img) - test = np.asarray(res[0]) - t = Image.fromarray(test) - plot = plt.imshow(t) - plt.show() print(res[1]) diff --git a/Projet/BoundaryTracing/BoudaryTracing.py b/Projet/BoundaryTracing/BoudaryTracing.py index 6653a96..216d306 100644 --- a/Projet/BoundaryTracing/BoudaryTracing.py +++ b/Projet/BoundaryTracing/BoudaryTracing.py @@ -34,13 +34,6 @@ def flush(self): self.miny = None self.maxy = None - # def optimal_y_level(self): - # print(self.maxy) - # print(self.miny) - # dy = self.maxy - self.miny - # optimaly = math.floor(0.33 * dy) - # return optimaly - def initial_trace_direction(self): self.initial_trace_point = (0, 0) for i in range(self.minx, self.maxx): @@ -130,10 +123,7 @@ def trace(self): if br == 2000: print('hello') break - # test = np.asarray(self.image) - # t = Image.fromarray(test) - # plot = plt.imshow(t) - # plt.show() + return [mask, fingertip, ret_points] def calcul_minx(self): diff --git a/Projet/Pipeline/Pipeline.py b/Projet/Pipeline/Pipeline.py index 7c27010..1911b78 100644 --- a/Projet/Pipeline/Pipeline.py +++ b/Projet/Pipeline/Pipeline.py @@ -20,8 +20,4 @@ def run(self, input): edges_image = self.edgeDetec.detect_edges(input) clipped_image = self.clip.clip(edges_image) bound_image_data = self.boundTrac.run(clipped_image) - test = np.asarray(clipped_image) - t = Image.fromarray(test) - plot = plt.imshow(t) - plt.show() return bound_image_data diff --git a/Projet/Pipeline/__pycache__/Pipeline.cpython-35.pyc b/Projet/Pipeline/__pycache__/Pipeline.cpython-35.pyc index d32ffe02390926b8aefca382530643968dddf2da..2c4eaca24f0c65a38b68c1a5fa94e704e14584b5 100644 GIT binary patch delta 119 zcmZqVYU1P)vfg4Y$SIlJ&!Wz9iz%;Q@@^J4 E0G3h~G5`Po delta 226 zcmZqTY~?t*Qj=ryRwgU{TP!81#U-~G yOK!0gJ(JT(OX diff --git a/Projet/README b/Projet/README new file mode 100644 index 0000000..02581d9 --- /dev/null +++ b/Projet/README @@ -0,0 +1,7 @@ +1. python3 et pip3 doivent être installé préalablemment sur la machine pour que le code soit exécutable +2. Appeler le script configure.sh: sh configure.sh +3. Pour exécuter la fonctionnalité de l'article(prédire le nombre de doigts levés), exécuter la commande : python3 Main.py -i +4. Pour entrainer le modèle pour la classification: python3 Main.py -m training +5. Pour classifier une image: python3 Main.py -m classification -i +6. Pour voir toutes les options disponibles : python3 Main.py -h +7. Pour entrainer un nouveau modèle, il faut tout d'abord effacer le dernier modèle \ No newline at end of file diff --git a/Projet/TrainedModel/model.txt b/Projet/TrainedModel/model.txt new file mode 100644 index 0000000..0322629 --- /dev/null +++ b/Projet/TrainedModel/model.txt @@ -0,0 +1,8 @@ +l1.0 0.9886313261973856 0.9772047725728248 0.9657746123152318 0.9544108668081015 0.9430958457951536 0.9317388494016104 0.920402854335435 0.9089975231231584 0.8976785449994307 0.8864096334358293 0.8750702218313482 0.8637831231836044 0.8525010664051405 0.8412772553760819 0.8300644250778888 0.8188846300851933 0.8077280304571433 0.7966288375514582 0.7854463833800481 +k1.0 0.9890627882870118 0.9782829326972156 0.9674863521904538 0.956866694995331 0.9461545671250953 0.9355640241069237 0.9249872258319893 0.9144955222106349 0.9039873220128651 0.8934687466801673 0.8829877804977714 0.8725835462755951 0.8622110014706869 0.851791511046461 0.8414312611982354 0.8311457952825035 0.8209161550728566 0.8107271068871501 0.8005378277464835 +w1.0 0.9870267806503344 0.9735362460720288 0.9592011029025258 0.9444022989991473 0.9297016926464909 0.9151825506371228 0.9006585487464958 0.886078303648402 0.8716498276384175 0.8572174514383347 0.8427728456855207 0.8283871042253792 0.8139705129568293 0.7997401909060731 0.7854649036910545 0.7713265261892785 0.7571625616602837 0.7431998005953263 0.7293491527161432 +f1.0 0.9909766928148457 0.981913793867278 0.9729159200132932 0.9639032400225703 0.9548842260070639 0.9458745952659744 0.9368670203501704 0.9278850208101751 0.918888478304557 0.9099011066950535 0.9009319996927229 0.8919469882340932 0.8829966311604174 0.8740314694311492 0.8650507613342873 0.8560921775643651 0.8471387147037911 0.8381668533120411 0.8292185503444749 +i1.0 0.9900330805393018 0.9799267684402521 0.969930105294399 0.959881692786049 0.9499156444225191 0.9398973109387505 0.9299774093264649 0.9200253729792116 0.9100629703796151 0.9001260117635439 0.8901920518403313 0.8801535582036658 0.8700370433409732 0.86009749990915 0.850073645335427 0.8399486477413898 0.8298637313668864 0.8198221593662403 0.8097006638519503 +v1.0 0.9908625429770358 0.9812518791129468 0.9712776041163959 0.9608201778717635 0.9504642891241538 0.9400845283761637 0.9296254565969266 0.9192627027758454 0.9089493279242049 0.8988023964646481 0.8885606365705078 0.8783739810800189 0.8682272127224749 0.8580528867725095 0.8479810197435752 0.8378830644394221 0.8278841577993532 0.8177546513048264 0.8077600172155925 +u1.0 0.990458439758131 0.9809945324129336 0.9715460351773836 0.9620734074294379 0.9526160991975022 0.9432082954380068 0.9337661627924588 0.9243103782572862 0.9148578948608076 0.9053949760523091 0.8959455305382876 0.8865070039223456 0.8771391752180615 0.8677121618699647 0.8582783900101427 0.8488472646547812 0.8394453664053069 0.8300278380951315 0.8206303887905347 +b1.0 0.9907304352236308 0.9810954099217086 0.9714609406327653 0.9619155900916428 0.9523781397271012 0.9428540324598401 0.9332770587485351 0.9237059365225558 0.9142210614543377 0.9046273708905108 0.8950912494060923 0.8855549966533088 0.8760235850325813 0.8665141183845557 0.8569448773155468 0.8474593414751496 0.8379623097120816 0.8284928692949312 0.8190007298770767 diff --git a/Projet/__pycache__/Bootstrap.cpython-35.pyc b/Projet/__pycache__/Bootstrap.cpython-35.pyc index 3f9ad81b98474721535b43336c4561df04c7ee87..86369969be00c4e6d25726414e0714a6600af458 100644 GIT binary patch delta 230 zcmdlacwK-?jF*>-Cs;P-2ir!j_e^}e3=9mcKYa9 z29PWdLkb^*WHTcJV+sR9uqOZH)hsu-elaS%WCU8IDKfc>bqbRv?_@i+1gRoHpb&%* z0r6h*rpPP6$iv9S$i>9VqRJ>V`8S&_qx|Fo4)MtW>?W*H%mq0mlRMcp O*knOE6(?_J{|x}ZmoB*g delta 344 zcmXAjKTE?v7{;IXa!G8+rD^NGQmI7{?II#Lih~YHCvh^gU?qyymX^zb2oVYezrZ=U z=vUC)&!Kd1cXAb6yhM)Y;rHWs;C&BYOWwQ?-u)xmE%(LyWtp0sOimim+u zVnQ{xaLpiV`oJ2@bdlQF@0{p2YghYxjg6rXt?eTpilb*E^${0Poe=H>l!M+ZQh`hZ zs5$iJkp{UIb6vm$AXUkCBHvLA95(|!<{$1CnR}Xx`pkZ4M1>1E9CW4Z-cGGiUq#N< zAh{ggL_F(esDJF!PQ=xDqNb!GKI#vZESdd(l{2cFs+lBPra(m&QfRVDWy2Nblfwjg ov~1ikc}(!^uR=xhJpJtKP+fmIEnBXbz20!woh1XZq1*27AFBpKI{*Lx diff --git a/Projet/asl_alphabet_test/B_test.jpg b/Projet/asl_alphabet_test/B_test.jpg index f741cc6e50892ebff7f387d525b8e1a70fa2db3b..3fbdfc3977d1e3490865295cc2084347844c04c2 100644 GIT binary patch delta 3093 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 Yhu)8;e!42?cp9ziIn6IF7ZPXx4=`7>y#N3J diff --git a/Projet/asl_alphabet_test/L_test.jpg b/Projet/asl_alphabet_test/L_test.jpg index 412420b3e639e66558c097a9f0baab48338eb0a3..69220ac4b5ec1ef598feda19982e8852ad2cdd5c 100644 GIT binary patch delta 4149 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%0D#2cAuwy4_NM&1|HQrlKeE#Xx{i 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 diff --git a/Projet/configure.sh b/Projet/configure.sh new file mode 100644 index 0000000..e395633 --- /dev/null +++ b/Projet/configure.sh @@ -0,0 +1,6 @@ +sudo apt-get build-dep python3-scipy +sudo pip3 install scipy +sudo pip3 install argparse +sudo pip3 install pillow +sudo pip3 install numpy +sudo pip3 install opencv-python \ No newline at end of file