Added to the dpc
|
After Width: | Height: | Size: 74 KiB |
|
After Width: | Height: | Size: 98 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 26 KiB |
|
After Width: | Height: | Size: 362 KiB |
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 30 KiB |
@@ -2850,3 +2850,89 @@ Bon je me rend compte que clairement si je veux que mes data soient plus utiles
|
||||
- Le nombre de tours des pneus (Les numéros sont vraiment mal detectés et parfois même la couleur est pas dingue)
|
||||
- Les 4 qui sont pris pour des 1 ou des 11 (pour les temps et les pneus)
|
||||
|
||||
après un test de plus longue haleine je suis content de voir que au moins mon programme peut tourner plus d'une heure sans crasher et qu'il peut être fiable quand il veut.
|
||||
|
||||
## Jeudi 18 Mai 2023
|
||||
|
||||
Aujourd'hui c'est téléTravail forcé et j'étais scensé aller au Grand Prix d'Imola ce qui malheureusement ne pourra pas se faire pour des raisons d'inondations. En effet la région est clairement pas en état de recevoir un Grand Prix de Formule 1 et donc ce weekend c'est maison.
|
||||
|
||||
Le but du jour c'est d'avancer la doc et de tenter d'améliorer l'OCR pour que Lundi il soit relativement facile d'avancer sur l'interface de l'app finale.
|
||||
|
||||
Je suis en train d'explorer une methode de detection de bords de sobel. Le seul soucis c'est que les résultats sont bons mais avec un vide au milieu des chiffres. Cela veut dire que parfois le temps est mal detecté. Mais il semble que pour le reste du temps cela se passe plutôt bien. Ca vaut peut être le coup de modifier la gestion des erreurs.
|
||||
|
||||

|
||||
|
||||
En fait le soucis avec ces artefacts c'est que parfois le temps au tour n'est tout simplement pas detecté. Dans l'exemple ci dessus, la reconnaissance de caractères ne trouve tout simplement rien. Il faut donc que je trouve un moyen de corriger ces soucis.
|
||||
|
||||
Il semblerait que en appliquant un tresholding un peu plus sévère en amont on arrive à réduire les artefacts
|
||||
|
||||
;
|
||||
|
||||
Je crois qu'il faut faire attention avec les 'Bitmap.save' quand on utilise de l'asynchrone. le GDI+ aime pas des masses.
|
||||
|
||||
## Lundi 22 Mai 2023
|
||||
|
||||
BON ! Il ne reste plus beaucoup de temps ! Selon le planning cette semaine est la dernière semaine de programmation. Il va donc falloir CHARBONNER !! Il ne me reste *plus que* une tâche à vraiment faire (à part les tests mais euuuu voila bon).
|
||||
|
||||
J'essaie d'implémenter un peu plus d'error handling mais c'est pas facile... Il y a tellement de choses qui peuvent mal tourner c'est infernal.
|
||||
|
||||
Une chose qui serait bien serait de rajouter des points d'attente variables dans le code de l'emulateur un peu partout pour eviter de se retrouver bloqué à chaque fois. L'intérêt serait que des gens avec une moins bonne connexion pourraient quand même profiter du programme sans qu'il crashe 300 fois.
|
||||
|
||||
Ce qui est frustrant c'est que va savoir pourquoi, maintenant, on arrive quasi jamais a avoir la page data... Genre sans deconner c'est une fois sur 5 que l'emulateur nous ressort la page Data et pas juste le feed. C'est absolument infernal. Je ne comprends pas pourquoi en plus. L'emulateur arrive bien à cliquer sur le bon bouton mais même comme ca ca ne veut pas.
|
||||
|
||||
CA NA AUCUN SENS BORDEL. Sur une image Jjai de supers resultats pour les temps au tour mais dès que l'image change PAF plus aucun temps n'est detecté.
|
||||
|
||||
Ah non c'est bon c'est juste que VA SAVOIR POURQUOI les images sont en putain de resolution DEGEULASSE. Je ne comprends pas pourquoi ce matin particulièrement le projet marche si mal. Par ce que dès que l'image revient à une résolution normale c'est bon.
|
||||
|
||||
Un autre soucis que j'ai est que je n'arrive pas à paralleliser l'OCR ce qui fait que elle peut prendre parfois plus de 15 secondes. Et le problème avec ca c'est que la detection de tours et de pitstop est grandement impactée si on a pas assez de data assez souvent. Je vais me focus sur le reste en attendant mais dès que M.Bonvin apparait dans les parages je vais devoir l'alpaguer.
|
||||
|
||||
J'ai ajouté la possibilité d'essayer plusieurs fois de trouver le bouton fullscreen et de cliquer dessus plutôt que d'attendre dix secondes comme un con et espèrer que ca fonctionne. Mais si après 15 secondes d'essais il n'y arrive pas cela fait quand même pêter une erreur.
|
||||
|
||||
Je pense que je vais m'occuper de la page de configuration maintenant.
|
||||
|
||||
Voici à quoi ressemblait la page de settings ce matin quand je suis arrivé.
|
||||
|
||||

|
||||
|
||||
Comme je pense que l'UI de cette page ne va pas vraiment changer d'ici la fin du projet je peux me permettre de lui faire une petite beauté car après je ne pense pas y retoucher.
|
||||
|
||||
Pour ca j'ai plusieurs étapes comme choisir une palette de couleur, retirer l'inutile et choisir judicieusement le placement des items sur la form pour que cela soit le plus intuitif possible.
|
||||
|
||||
J'y pense, il fuadrait peut-être que je me trouve un logo ca pourrait rendre bien.
|
||||
|
||||
Voila alors j'ai changé un tout petit peu ce à quoi ressemble la page de settings et j'ai ajouté du responsive pour que le user puisse mettre l'application en plein écran.
|
||||
|
||||

|
||||
|
||||
Mais il manque un peu de couleurs et de détails pour que cela rende vraiment bien.
|
||||
|
||||
Et après quelques tentatives on se retrouve avec une page plutôt sympa je trouve :
|
||||
|
||||

|
||||
|
||||
Et elle est responsive :
|
||||
|
||||

|
||||
|
||||
Et j'ai fait quelques changements pour ce qui est des zones qui s'affichent pour qu'on les voie mieux.
|
||||
|
||||

|
||||
|
||||
Je trouve que franchement ca rend pas mal. Le reste de l'app sera dans ce style. J'ai mis pas mal de temps à créer cette page, mais je pense que c'est important que la page de config soit propre. Et en plus tout le temps que j'ai passé ici n'est pas perdu car ensuite j'aurai simplement à suivre les mêmes directives de style pour le reste de l'UI.
|
||||
|
||||
Il faut aussi savoir que Windows Form n'est ps forcément le meilleur outil pour travailler avec le design. Truc tout bête par exemple qui m'a fait perdre 30 minutes. Il est impossible de retirer les bordures des objets "GroupBox". Ce que j'ai donc du faire ca a été de dessiner un rectangle autour de la couleur du background pour que l'on ne voit plus les bordures et ensuite j'ai du redessiner le texte pour qu'il puisse s'afficher quand même.
|
||||
|
||||
C'est pleins de petites choses comme ca qui sont plutôt pénibles et qui font perdre du temps mais je pense que c'est rentable de s'y attarder.
|
||||
|
||||
Maintenant ce que je vais faire aujourd'hui et demain c'est l'affichage general de l'app. Je pense que je vais commencer par mettre des placeholder de l'app finale comme ca je saurai quoi implementer comme methodes de récupèration demain.
|
||||
|
||||
J'aimerais quand même faire une interface sympa même si les data sont pas parfaites. Par ce que je me dis que au pire si je montre une interface qui donne des infos inexacte mais qui a la bonne logique c'est toujours mieux que de ne pas montrer ce que ca pourrait faire avec des données un peu plus intègres.
|
||||
|
||||
Autre point à noter, je me suis rendu compte que ca pourrait être potentiellement pas mal de trouver un moyen rapide de lancer l'appli avec un Grand Prix. Genre permettre de selectionner le preset et l'URL du Grand Prix sans avoir à passer par la page de configuration. Je me suis rendu compte que c'était super chiant de devoir à chaque fois le faire (même si je me rends compte que normalement un user ne devrait pas lancer l'app autant)
|
||||
|
||||
Voila ue première version de l'App avec tous les placeholders :
|
||||
|
||||

|
||||
|
||||
Et c'est tout pour aujourd'hui ! Ce fut une journée remplie.
|
||||
|
||||
|
||||