commit e224b59406b05de912efc5af268be30adc65b3ba Author: berta Date: Sat Jan 16 13:46:02 2021 -0500 first commit diff --git a/Architectures des Services/Annexe - Liste de Commandes.pdf b/Architectures des Services/Annexe - Liste de Commandes.pdf new file mode 100644 index 0000000..9705833 Binary files /dev/null and b/Architectures des Services/Annexe - Liste de Commandes.pdf differ diff --git a/Architectures des Services/Rapport Projet SOA.pdf b/Architectures des Services/Rapport Projet SOA.pdf new file mode 100644 index 0000000..90ad303 Binary files /dev/null and b/Architectures des Services/Rapport Projet SOA.pdf differ diff --git a/Big Data/Etude Big Data.pdf b/Big Data/Etude Big Data.pdf new file mode 100644 index 0000000..1a6f722 Binary files /dev/null and b/Big Data/Etude Big Data.pdf differ diff --git a/CV/Berta Pauline CV.pdf b/CV/Berta Pauline CV.pdf new file mode 100644 index 0000000..d9ddcc1 Binary files /dev/null and b/CV/Berta Pauline CV.pdf differ diff --git a/Cloud/Adaptability and Autonomic Management.pdf b/Cloud/Adaptability and Autonomic Management.pdf new file mode 100644 index 0000000..45dd315 Binary files /dev/null and b/Cloud/Adaptability and Autonomic Management.pdf differ diff --git a/From 3G to 6G/Iridium Next, Oneweb, Starlink.pdf b/From 3G to 6G/Iridium Next, Oneweb, Starlink.pdf new file mode 100644 index 0000000..84e6b78 Binary files /dev/null and b/From 3G to 6G/Iridium Next, Oneweb, Starlink.pdf differ diff --git a/From 3G to 6G/Présentation - From 3G to 5G.pdf b/From 3G to 6G/Présentation - From 3G to 5G.pdf new file mode 100644 index 0000000..3ed73bc Binary files /dev/null and b/From 3G to 6G/Présentation - From 3G to 5G.pdf differ diff --git a/Intergiciels et Services/Middleware for IoT TP1.pdf b/Intergiciels et Services/Middleware for IoT TP1.pdf new file mode 100644 index 0000000..2c1ee3d Binary files /dev/null and b/Intergiciels et Services/Middleware for IoT TP1.pdf differ diff --git a/Intergiciels et Services/Middleware for IoT TP2.pdf b/Intergiciels et Services/Middleware for IoT TP2.pdf new file mode 100644 index 0000000..224f655 Binary files /dev/null and b/Intergiciels et Services/Middleware for IoT TP2.pdf differ diff --git a/Intergiciels et Services/Middleware for IoT TP3.pdf b/Intergiciels et Services/Middleware for IoT TP3.pdf new file mode 100644 index 0000000..58db0ac Binary files /dev/null and b/Intergiciels et Services/Middleware for IoT TP3.pdf differ diff --git a/Intergiciels et Services/Middleware for IoT TP4.pdf b/Intergiciels et Services/Middleware for IoT TP4.pdf new file mode 100644 index 0000000..dc6e6df Binary files /dev/null and b/Intergiciels et Services/Middleware for IoT TP4.pdf differ diff --git a/Méthodes de Créativité/Courbe en S du Ski avec Triz.pdf b/Méthodes de Créativité/Courbe en S du Ski avec Triz.pdf new file mode 100644 index 0000000..3410c4b Binary files /dev/null and b/Méthodes de Créativité/Courbe en S du Ski avec Triz.pdf differ diff --git a/Méthodes de Créativité/Courbe en S.jpg b/Méthodes de Créativité/Courbe en S.jpg new file mode 100644 index 0000000..9f0cade Binary files /dev/null and b/Méthodes de Créativité/Courbe en S.jpg differ diff --git a/Méthodes de Créativité/Diagramme en Araignée.jpg b/Méthodes de Créativité/Diagramme en Araignée.jpg new file mode 100644 index 0000000..c38a6b2 Binary files /dev/null and b/Méthodes de Créativité/Diagramme en Araignée.jpg differ diff --git a/Méthodes de Créativité/Evolution du Ski.pdf b/Méthodes de Créativité/Evolution du Ski.pdf new file mode 100644 index 0000000..349546f Binary files /dev/null and b/Méthodes de Créativité/Evolution du Ski.pdf differ diff --git a/Projet Innovation/Demonstration_Lign_Assist.mp4 b/Projet Innovation/Demonstration_Lign_Assist.mp4 new file mode 100644 index 0000000..d49496f Binary files /dev/null and b/Projet Innovation/Demonstration_Lign_Assist.mp4 differ diff --git a/Projet Innovation/Franchissement.py b/Projet Innovation/Franchissement.py new file mode 100644 index 0000000..c5ff94f --- /dev/null +++ b/Projet Innovation/Franchissement.py @@ -0,0 +1,238 @@ +import cv2 +#import numpy as np +import time +import sys + +#Hauteur des zones de détection. +ymin=550 +ymax=551 +#Largeur de la zone de détection de gauche. +xmin1=130 +xmax1=300 +#Largeur de la zone de détection de droite. +xmin2=700 +xmax2=870 + + +#Fonction Point qui créée un point avec une position correspondant à celle du contour détecté. +def point(capteur): + s1=len(capteur)-1 + s2=len(capteur)-1 + for i in range(len(capteur)): + if capteur[i]!=0: + s1=i + break + if s1!=len(capteur)-1: + for i in range(len(capteur)-1, s1-1, -1): + if capteur[i]!=0: + s2=i + break + return int((s1+s2)/2) + return -1 + + +#Variables +s1_old=0 +s2_old=0 +s1=0 +s2=0 +s1_time=0 +s2_time=0 + +#Seuils utilisés pour la fonction Canny (détection des contours) +th1=75 +th2=150 + +stop=0 + +#Niveau de flou de l'image +k=3 + +#On commence par récupérer la vidéo à traiter. +cap=cv2.VideoCapture("C:/Users/Pauline/Documents/INSA/5eme Année INSA ISS/Projet ISS/Video_Test.mp4") + +while True: + + if not stop: + #On ségmente la vidéo et on récupère les images, image par image. + ret, frame=cap.read() + + if ret is False: + sys.exit() + + image=frame.copy() + +#Detection de la ligne de gauche (avec une zone de détection). + #Je transforme mon image en gris (avec différentes nuances de gris). + #Pour ma zone de détection située à gauche. + gray1=cv2.cvtColor(image[ymin:ymax, xmin1:xmax1], cv2.COLOR_BGR2GRAY) + + if k!=1: + gray1=cv2.blur(gray1, (k, k)) + + #La fonction Canny permet de détecter les contours des différents objets présents sur l'image. + #Elle prend en argument l'image transformée en gris et les deux seuils. + capteur1=cv2.Canny(gray1, th1, th2) + +#Detection de la ligne de droite (avec une zone de détection). + #Je transforme mon image en gris (avec différentes nuances de gris). + #Pour ma zone de détection située à droite. + gray2=cv2.cvtColor(image[ymin:ymax, xmin2:xmax2], cv2.COLOR_BGR2GRAY) + + if k!=1: + gray2=cv2.blur(gray2, (k, k)) + + #La fonction Canny permet de détecter les contours des différents objets présents sur l'image. + #Elle prend en argument l'image transformée en gris et les deux seuils. + capteur2=cv2.Canny(gray2, th1, th2) + + #Affichage des contours des deux zones de détection. + cv2.rectangle(image, (xmin1, ymin), (xmax1, ymax), (255, 0, 0), 1) + cv2.rectangle(image, (xmin2, ymin), (xmax2, ymax), (255, 0, 0), 1) + +#Pour palier à la détection qui vacile au niveau des lignes discontinus ainsi qu'à la venue d'éventuelles +#erreurs. On va conserver l'information ligne détectée pendant une seconde après la dernière détection. +#Cela nous permettra de ne pas considérer l'absence de ligne lorsqu'il s'agit simplement d'une ligne discontinue par exemple! + +#Capteur situé sur la zone de détection de gauche. + #Création d'un point dans la zone de détection qui désigne la position du contour détecté. + s1=point(capteur1[0]) + + #Si un contour est détecté. + if s1!=-1: + #Affichage d'un point de couleur verte lorsque la zone détecte la ligne. + cv2.circle(image, (s1+xmin1, ymin), 3, (0, 255, 0), 3) + #On concerve l'information (ligne détectée). + s1_old=s1 + #On enregistre le moment où la ligne a été détectée. + s1_time=time.time() + + else: + #Si le temps écoulé depuis la dernière perte de détection est inférieur à une seconde. + if time.time()-s1_time<1: + #Affichage d'un point de couleur jaune lorsque la zone ne détecte pas la ligne. + cv2.circle(image, (s1_old+xmin1, ymin), 3, (100, 255, 255), 3) + s1=s1_old + + #Pour un temps supérieur on ne concerve pas l'information (ligne détectée). + else: + s1=-1 + +#Capteur situé sur la zone de détection de droite. + #Création d'un point dans la zone de détection qui désigne la position du contour détecté. + s2=point(capteur2[0]) + + #Si un contour est détecté. + if s2!=-1: + #Affichage d'un point de couleur verte lorsque la zone détecte la ligne. + cv2.circle(image, (s2+xmin2, ymin), 3, (0, 255, 0), 3) + #On concerve l'information (ligne détectée). + s2_old=s2 + #On enregistre le moment où la ligne a été détectée. + s2_time=time.time() + + else: + #Si le temps écoulé depuis la dernière perte de détection est inférieur à une seconde. + if time.time()-s2_time<1: + #Affichage d'un point de couleur jaune lorsque la zone ne détecte pas la ligne. + cv2.circle(image, (s2_old+xmin2, ymin), 3, (100, 255, 255), 3) + s2=s2_old + + #Pour un temps supérieur on ne concerve pas l'information (ligne détectée). + else: + s2=-1 + +#Alerte du décalage à gauche ou à droite de la voiture sur la chaussée. + #Si un contour est détecté dans les deux zones de détection. + if s1!=-1 and s2!=-1: + #Variable permettant d'évaluer un décalage trop important à droite ou à gauche. + s2_=abs(xmax2-xmin2-s2) + + #Si un décalage trop important est observé d'un côté ou de l'autre de la voie. + if abs(s2_-s1)>20: + c=(0, max(0, 255-10*int(abs(s1-s2_)/2)), min(255, 10*int(abs(s1-s2_)/2))) + #Affichage d'un cercle de couleur variable en fonction d'un décalage plus ou moins conséquent. + cv2.circle(image, (int((xmax2-xmin1)/2)+xmin1, ymax-25), 5, c, 7) + #Affichage d'une flèche d'orientation et de couleur variable en fonction d'un décalage plus ou moins conséquent et de sa direction. + cv2.arrowedLine(image, (int((xmax2-xmin1)/2)+xmin1, ymax-25), (int((xmax2-xmin1)/2)+xmin1+2*int((s1-s2_)/2), ymax-25), c, 3, tipLength=0.4) + + #La voiture est bien centrée au milieu de sa voie. + else: + cv2.putText(image, "OK", (int((xmax2-xmin1)/2)+xmin1-15, ymax-16), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 255, 0), 1) + +#Renseignement à l'écran des valeurs de Seuil, de niveau de Flou, des touches d'Arrêt et Ajustement de la ligne de détection + cv2.putText(image, "Seuil 1: {:d} , Seuil 2: {:d} , Niveau de Flou: {:d}".format(th1, th2, k), (10, 30), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 220, 255), 1) + cv2.putText(image, "Entrer 's' : STOP , Entrer 'q' : QUITTER", (10, 60), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 220, 255), 1) + cv2.putText(image, "Commandes d'Ajustement de la ligne de Detection", (50, 90), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 220, 255), 1) + cv2.putText(image, "Entrer 'm' : Abaisser la ligne de Detection , Entrer 'p' : Elever la ligne de Detection", (10, 120), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 220, 255), 1) + cv2.putText(image, "Entrer 'o' : Decaler vers la droite la ligne , Entrer 'l' : Decaler vers la gauche la ligne", (10, 150), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 220, 255), 1) + #Création fenêtre avec l'image de la vidéo et les annotions renseignées précédemment. + cv2.imshow("image", image) + + #Je transforme mon image en gris (avec différentes nuances de gris). + gray=cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) + + if k!=1: + #Application du flou sur l'image. + gray=cv2.blur(gray, (k, k)) + + #Création fenêtre avec l'image de la vidéo en niveaux de gris et floutée. + cv2.imshow("blur", gray) + + #La fonction Canny permet de détecter les contours des différents objets présents sur l'image. + gray_canny=cv2.Canny(gray, th1, th2) + #Création fenêtre avec l'image de la vidéo contourée grâce à la fonction Canny. + cv2.imshow("canny", gray_canny) + + if not stop: + key=cv2.waitKey(20)&0xFF + + else: + key=cv2.waitKey() + image=frame.copy() + + if key==ord('q'): + break + +#Modification du positionnement des lignes de détection + if key==ord('m'): + ymin+=1 + ymax+=1 + if key==ord('p'): + ymin-=1 + ymax-=1 + if key==ord('o'): + xmin1+=1 + xmax1+=1 + xmin2+=1 + xmax2+=1 + if key==ord('l'): + xmin1-=1 + xmax1-=1 + xmin2-=1 + xmax2-=1 + +#Modification des seuils de la fonction Canny et du niveau de flou + # if key==ord('y'): + # k=min(255, k+2) + # if key==ord('h'): + # k=max(1, k-2) + # if key==ord('u'): + # th1=min(255, th1+1) + # if key==ord('j'): + # th1=max(0, th1-1) + # if key==ord('i'): + # th2=min(255, th2+1) + # if key==ord('k'): + # th2=max(0, th2-1) + + if key==ord('s'): + stop=not stop + + # if key==ord('a'): + # for cpt in range(200): + # ret, frame=cap.read() + # image=frame.copy() + +cap.release() +cv2.destroyAllWindows() \ No newline at end of file diff --git a/Projet Innovation/Smart Connected Car Report.pdf b/Projet Innovation/Smart Connected Car Report.pdf new file mode 100644 index 0000000..2f5cc9b Binary files /dev/null and b/Projet Innovation/Smart Connected Car Report.pdf differ diff --git a/Protocoles pour les Objets Connectés/Présentation - OneM2M.pdf b/Protocoles pour les Objets Connectés/Présentation - OneM2M.pdf new file mode 100644 index 0000000..d4259c7 Binary files /dev/null and b/Protocoles pour les Objets Connectés/Présentation - OneM2M.pdf differ diff --git a/Protocoles pour les Objets Connectés/Présentation - Protocoles MAC dédiés au WSN (BERTA Pauline).pdf b/Protocoles pour les Objets Connectés/Présentation - Protocoles MAC dédiés au WSN (BERTA Pauline).pdf new file mode 100644 index 0000000..817bc3e Binary files /dev/null and b/Protocoles pour les Objets Connectés/Présentation - Protocoles MAC dédiés au WSN (BERTA Pauline).pdf differ diff --git a/Protocoles pour les Objets Connectés/Rapport - OneM2M.pdf b/Protocoles pour les Objets Connectés/Rapport - OneM2M.pdf new file mode 100644 index 0000000..5a75167 Binary files /dev/null and b/Protocoles pour les Objets Connectés/Rapport - OneM2M.pdf differ diff --git a/Protocoles pour les Objets Connectés/Rapport - Protocoles MAC dédiés au WSN (BERTA Pauline).pdf b/Protocoles pour les Objets Connectés/Rapport - Protocoles MAC dédiés au WSN (BERTA Pauline).pdf new file mode 100644 index 0000000..4b5ac0a Binary files /dev/null and b/Protocoles pour les Objets Connectés/Rapport - Protocoles MAC dédiés au WSN (BERTA Pauline).pdf differ diff --git a/Protocoles pour les Objets Connectés/Rapport TP Protocoles pour les objets connectés.pdf b/Protocoles pour les Objets Connectés/Rapport TP Protocoles pour les objets connectés.pdf new file mode 100644 index 0000000..8c973f4 Binary files /dev/null and b/Protocoles pour les Objets Connectés/Rapport TP Protocoles pour les objets connectés.pdf differ diff --git a/Psychologie Sociale/Présentation - Psychologie Sociale.pdf b/Psychologie Sociale/Présentation - Psychologie Sociale.pdf new file mode 100644 index 0000000..e0467e8 Binary files /dev/null and b/Psychologie Sociale/Présentation - Psychologie Sociale.pdf differ diff --git a/Semantic Data/Semantic Data.pdf b/Semantic Data/Semantic Data.pdf new file mode 100644 index 0000000..bdb9dfd Binary files /dev/null and b/Semantic Data/Semantic Data.pdf differ diff --git a/Smart Devices/Datasheet.pdf b/Smart Devices/Datasheet.pdf new file mode 100644 index 0000000..1daa351 Binary files /dev/null and b/Smart Devices/Datasheet.pdf differ diff --git a/Smart Devices/Images Complémentaires/Image1.jpg b/Smart Devices/Images Complémentaires/Image1.jpg new file mode 100644 index 0000000..5889676 Binary files /dev/null and b/Smart Devices/Images Complémentaires/Image1.jpg differ diff --git a/Smart Devices/Images Complémentaires/Image2.jpg b/Smart Devices/Images Complémentaires/Image2.jpg new file mode 100644 index 0000000..c2bb928 Binary files /dev/null and b/Smart Devices/Images Complémentaires/Image2.jpg differ diff --git a/Smart Devices/Images Complémentaires/coté.PNG b/Smart Devices/Images Complémentaires/coté.PNG new file mode 100644 index 0000000..c22d886 Binary files /dev/null and b/Smart Devices/Images Complémentaires/coté.PNG differ diff --git a/Smart Devices/Images Complémentaires/dessous.PNG b/Smart Devices/Images Complémentaires/dessous.PNG new file mode 100644 index 0000000..87c029e Binary files /dev/null and b/Smart Devices/Images Complémentaires/dessous.PNG differ diff --git a/Smart Devices/Images Complémentaires/dessus.PNG b/Smart Devices/Images Complémentaires/dessus.PNG new file mode 100644 index 0000000..72e4d59 Binary files /dev/null and b/Smart Devices/Images Complémentaires/dessus.PNG differ diff --git a/Smart Devices/Images Complémentaires/pcb.PNG b/Smart Devices/Images Complémentaires/pcb.PNG new file mode 100644 index 0000000..05af278 Binary files /dev/null and b/Smart Devices/Images Complémentaires/pcb.PNG differ diff --git a/Smart Devices/Images Complémentaires/sch.PNG b/Smart Devices/Images Complémentaires/sch.PNG new file mode 100644 index 0000000..fde9ffe Binary files /dev/null and b/Smart Devices/Images Complémentaires/sch.PNG differ diff --git a/Smart Devices/Images Complémentaires/sch2.PNG b/Smart Devices/Images Complémentaires/sch2.PNG new file mode 100644 index 0000000..2fa94b7 Binary files /dev/null and b/Smart Devices/Images Complémentaires/sch2.PNG differ diff --git a/Smart Devices/Images Complémentaires/schema.PNG b/Smart Devices/Images Complémentaires/schema.PNG new file mode 100644 index 0000000..082300b Binary files /dev/null and b/Smart Devices/Images Complémentaires/schema.PNG differ diff --git a/Smart Devices/Images Complémentaires/schema2.PNG b/Smart Devices/Images Complémentaires/schema2.PNG new file mode 100644 index 0000000..5c718f6 Binary files /dev/null and b/Smart Devices/Images Complémentaires/schema2.PNG differ diff --git a/Smart Devices/Images Complémentaires/schema2bis.PNG b/Smart Devices/Images Complémentaires/schema2bis.PNG new file mode 100644 index 0000000..83b2646 Binary files /dev/null and b/Smart Devices/Images Complémentaires/schema2bis.PNG differ