Outils pour utilisateurs

Outils du site


diy:projets:motiondetection

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Prochaine révisionLes deux révisions suivantes
diy:projets:motiondetection [2018/05/28 08:28] – [Programme] ecaussediy:projets:motiondetection [2018/05/28 08:37] – [Seuillage] ecausse
Ligne 30: Ligne 30:
  
 ==== Flou Gaussien ==== ==== Flou Gaussien ====
-On récupère l'image en cour qu'on transforme en niveau de gris puis on lui applique un flou gaussien pour atténuer le bruit, sans se flou on repérerez par la suite tout les bruits comme étant du mouvement. Appliquer un flou gaussien est donc indispensable pour la suite du programme.+On récupère l'image en cour qu'on transforme en niveau de gris puis on lui applique un flou gaussien pour atténuer le bruit, sans ce flou on repérerait par la suite tout les bruits comme étant du mouvement. Appliquer un flou gaussien est donc indispensable pour la suite du programme.
  
-Cela ce fait grace au code suivant et on obtient l'image ci dessous:+Cela ce fait grâce au code suivant et on obtient l'image ci dessous:
 <code python> <code python>
 gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY) gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
Ligne 44: Ligne 44:
 </code> </code>
 ==== Seuillage ==== ==== Seuillage ====
-Après avoir obtenu l'image avec le flou gaussien, on fait la différence absolue entre l'image en cours et l'image précédente, cela nous permet de voir les pixels uniquement en mouvement. Ensuite on fait un seuillage binaire sur cette nouvelle image et tout les pixels qui on un certain niveau de gris sont placé à 255. Ici on choisi 7 pour pouvoir repérer même les petit mouvement. Puis on dilate cette image pour avoir bien tout l'objet si possible en mouvement (des fois c'est un échec...); et à l'aide du code suivant on obtient l'image ci dessous:+Après avoir obtenu l'image avec le flou gaussien, on fait la différence absolue entre l'image en cours et l'image précédente, cela nous permets de voir les pixels uniquement en mouvement. Ensuite on fait un seuillage binaire sur cette nouvelle image et tout les pixels qui on un certain niveau de gris sont placés à 255. Ici on choisi 7 pour pouvoir repérer même les petits mouvements. Puis on dilate cette image pour avoir bien tout l'objet si possible en mouvement (des fois c'est un échec...); et à l'aide du code suivant on obtient l'image ci dessous:
 <code python> <code python>
 frameDelta = cv2.absdiff(prevFrame,gray) frameDelta = cv2.absdiff(prevFrame,gray)
diy/projets/motiondetection.txt · Dernière modification : 2018/05/28 08:44 de ecausse