Je viens de tester un code C# ou j'ai utilisé la librairie CUDA (il faut une 1050Ti min) mais ça marche, c'est avec OpenCV (EMGU) DNN, et là ça chope le visage, même s'il n'est pas droit et les profils aussi, c'est exactement ce que je veux, etc. et c'est en grosse partie le GPU qui est sollicité.
C'est bon ça
. Tu chopes le visage avec la vision IR ou en normal?
Car en normal, ca marche très bien mais pas avec la vision IR... Que je comprenne bien
.
Je vais essayer de comprendre le code de comparaison d'Halovision pour le porter sur ce que je viens de faire marcher
Je veux bien jeter un coup d'oeil au fichier halovision décompilé, n'hésites pas à me passer le fichier par mp.
Par contre, j'ai entendu dire que la décompilation rendait le code difficile à lire...
J'ai testé Halo sur Android, pas en test réel mais comme ça en live, effectivement des que l'on bouge, une musique est joué
Tu as regardé le code apk, il est peut être plus simple à lire?
Paramétrage des notifications à 00h25 et bingo en plein dans ma phase REM mais aucun ressenti.
Pour le non-ressenti des vibrations que j'ai ou non pendant la phase REM.
Tu fais ca toujours en mettant une notification 1h après ton sommeil?
Tu ressens rien? Tu as de la chance, je suis réveillé direct. Tu as assayé une salve de notifs suivi d'une autre salve quelques secondes après.
Donc, je peux récupérer le flux de la webcam ou RSTP (en mode UDP) avec Emgu OpenCV.
Il y a 3 fenetres :
Camera output / Previous Frame / Absolute Frame difference.
Ca serait cool, si tu pouvais poster des photos pour mieux comprendre
. Tu as trouvé un code déjà fait pour avoir les 3 fenêtres?
Ce qui est cool, c'est que j'ai pu réussir (un peu comme halovision) détecter les pixels seulement dans la zone du visage et le top c'est que le visage est détecté de face / profil avec un angle
C'est top! Même question, en vision nocturne ca fonctionne aussi?
Alors l'idée de mettre en place un seuil bas et haut pour la détection en mode "detect face" :
- Si je bouge la tête -> beaucoup de pixel (trop) - dépasse le seuil haut
- Si c'est seulement les yeux -> zone de trigger (entre le seuil bas et haut)
- Si en dessus du seuil, je suis obligé d'en avoir un car pour le RTSP, j'ai des parasites qu'il ne faut pas prendre en compte.
@Barsoom, tu le geres comment ça ?
Ton idée est bonne (j'ai eu la même), faut juste étudier quelques mouvements spécifiques pour régler les paramètres. Ce que je fais, j'ai filmer ma nuit. Puis j'ai découpé des périodes avec des mouvements différents.
Exemple : un épisode de REM, un épisode de retournement, de grattage de nez, mouvement tête, etc...
Ensuite j'ai passé chacune des vidéos dans le soft pour avoir des valeurs hautes et basses. Filtrage de base.
J'ai réalisé un filtrage primaire : pour les parasites et les gros mouvements. Donc si en dessous de quelques pixels ou au dessus du seuil, je vire... Ca me permet de virer les mouvements parasites de quelques pixels et les plus gros qui sont clairement des retournements.
Ensuite, je bosse ton autre idée : Si c'est seulement les yeux -> zone de trigger (entre le seuil bas et haut)
Entre chaque mouvement (différence de pixel), je regarde le temps qui s'est passé. Un REM, c'est plusieurs mouvements à la suite dans un temps très court. Mais pas trop rapide non plus, aussi non, c'est un mini mouvement!
J'ai choisi de travailler sur des blocs de 10 frames (mouvements) que j'additionne. Un pixel blanc (Frame difference) à la valeur de "255". Avant d'additionner l'image, je convertis les pixels blancs (255) en gris clair (20).
Mon image finale (après addition des 10 images):
En additionnant les images, certains pixels auront la valeur (20) -> ils ont bougés une seule fois. C'est gris très clair.
D'autres auront comme valeur (40) -> ils ont bougés 2 fois...
D'autres auront comme valeur (60) -> ils ont bougés 3 fois... Un peu plus blanc déjà...
Grace à ca, tu sais qu'un REM, c'est forcément une zone ou les pixels ont bougés plus de x fois. Si tu as un nombre de pixels important qui est resté à 20, c'est juste un mouvement...
Ensuite il faut un autre filtrage pour savoir si les pixels sont concentrés ou pas...
Je sais pas si j'ai étais assez clair?