Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
cours:plim:projet16_17:gr17:gr17 [2017/02/17 10:42] bmessiha [Algorithmes mis en œuvre :] |
cours:plim:projet16_17:gr17:gr17 [2017/02/19 23:43] (Version actuelle) bmessiha [Consommation de l’application:] |
||
---|---|---|---|
Ligne 10: | Ligne 10: | ||
==== Description et scénario d'utilisation ==== | ==== Description et scénario d'utilisation ==== | ||
- | L'idée est un détecteur du bruit qui peut calculer la puissance du son autour du portable (en dB), en tenant compte de sa géolocalisation et du temps, peut faire des statistiques pour ces valeurs et alors donne des rapports à l'utilisateur. L’intérêt est d'avertir l'utilisateur s'il y a du bruit troublant autour de lui pendant les différentes périodes de la journée. | + | L'idée est un détecteur du bruit qui peut calculer la puissance du son autour du portable (en dB), en tenant compte de sa géolocalisation et du temps, peut faire des statistiques pour ces valeurs et alors donne des rapports à l'utilisateur. L’intérêt est d'avertir l'utilisateur s'il y a du bruit troublant autour de lui pendant les différentes périodes de la journée, et aussi de lui donner un bilan simplifié du bruit auquel il est été exposé. |
**Scénario:** | **Scénario:** | ||
Ligne 64: | Ligne 64: | ||
* [[https://developer.android.com/reference/android/media/MediaRecorder.html|MediaRecorder]] pour capter le son | * [[https://developer.android.com/reference/android/media/MediaRecorder.html|MediaRecorder]] pour capter le son | ||
* Calcul de l'intensité du son à l'aide d'une équation | * Calcul de l'intensité du son à l'aide d'une équation | ||
- | * Pour déterminer le seuil permis d'exposition continu {{:cours:plim:projet16_17:gr17:decibel_exposure_chart.gif?nolink&300|}} | + | * Pour déterminer le seuil permis d'exposition continu |
+ | *{{:cours:plim:projet16_17:gr17:decibel_exposure_chart.gif?nolink&400|}} | ||
==== Architecture logicielle de la solution :==== | ==== Architecture logicielle de la solution :==== | ||
Notre système se compose de: | Notre système se compose de: | ||
Ligne 89: | Ligne 90: | ||
* Custom Clustering | * Custom Clustering | ||
* Pour éviter l'affichage de plusieurs marqueurs sur la carte pour la meme position, nous avons besoin de regrouper les positions qui sont proches (pour un certain rayon). Nous n'avons pas utilisé le K-means parce qu'on doit lui préciser le nombre des clusters, et dans ce cas, on ne peut pas connaitre ce type de donnée. Nous avons crée notre propre méthode pour regrouper les positions proches. | * Pour éviter l'affichage de plusieurs marqueurs sur la carte pour la meme position, nous avons besoin de regrouper les positions qui sont proches (pour un certain rayon). Nous n'avons pas utilisé le K-means parce qu'on doit lui préciser le nombre des clusters, et dans ce cas, on ne peut pas connaitre ce type de donnée. Nous avons crée notre propre méthode pour regrouper les positions proches. | ||
- | ===== Rendu Final ===== | + | ===== RENDU FINAL ===== |
+ | Code Source sur github : https://github.com/eslamhossam23/ELIM/tree/Cloud | ||
+ | |||
+ | ==== Installation ==== | ||
+ | Il suffit d'installer l'application mobile sur votre smartphone Android, puisque le coté serveur et la base de données est sur cloud. | ||
+ | |||
+ | Téléchargement : télécharger l'APK suivant sur votre téléphone mobile : [[https://drive.google.com/file/d/0B-2v13jZ38fILWZTTU1Rc1pMMmc/view?usp=sharing|APK]] | ||
+ | * Choisir “Télécharger” | ||
+ | * Allez dans l'application “Téléchargement” et cliquez sur le fichier .apk | ||
+ | * Sélectionnez “Installer” | ||
+ | |||
+ | ====Fonctionnement de l’application:==== | ||
+ | |||
+ | Dès l'ouverture de l'application, le service de recording est activé. Il calcule l’intensité du son une fois chaque 30 second (le calcul d’une fois est effectivement 5 fois consécutives et on prend la moyenne afin d’éviter les anomalies). Puis le service enregistre chaque donnée au Firebase. | ||
+ | |||
+ | A l’interface principale, vous trouverez quatre boutons: Get Data, Show Map, KMeans et un bouton de capture écran. | ||
+ | |||
+ | {{:cours:plim:projet16_17:gr17:screenshot_20170219-232529.png?200|}} | ||
+ | * Le bouton Get Data demande les données directement enregistrées sous Firebase et dès qu’elles sont prêtes, on les affiche sur le graphe sans aucun calcul. | ||
+ | {{:cours:plim:projet16_17:gr17:untitled_presentation.png?200|}} | ||
+ | * Show Map permet le passage à la carte où on affichera les positions dans lesquelles le service a enregistré l’intensité du son, et aussi l’intensité moyenne dans cette position (si il y en a plusieurs). | ||
+ | {{:cours:plim:projet16_17:gr17:screenshot_20170219-232433.png?200|}} | ||
+ | * KMeans permet le passage à une autre interface qui vous donne le choix de représenter le résultat de l’algorithme sous forme d’un graphe. Plus un paragraphe dessous qui explique la résultat | ||
+ | {{:cours:plim:projet16_17:gr17:screenshot_20170219-232507.png?200|}} | ||
+ | {{:cours:plim:projet16_17:gr17:untitled_presentation1.png?200|}} | ||
+ | |||
+ | * Capture d’écran du graphe visible | ||
+ | Donnée sans calcul: | ||
+ | |||
+ | {{:cours:plim:projet16_17:gr17:img_6_17_1.jpg?200|}} | ||
+ | |||
+ | Resultat Kmeans: | ||
+ | |||
+ | {{:cours:plim:projet16_17:gr17:img_report_5_16_1.jpg?200|}} | ||
+ | |||
+ | ====Consommation de l’application:==== | ||
+ | Puisque l’application utilise un service activé tout le jour, il est alors indispensable d’évaluer la consommation d'énergie. Nous avons fait un petit test, nous avons laissé le service fonctionnant depuis minuit et pour 15 heures. La consommation était seulement 3%. | ||
+ | |||
+ | {{:cours:plim:projet16_17:gr17:screenshot_20170211-150659.png?200|}} |