OpenCV Python reseau
Benq360
Messages postés
103
Statut
Membre
-
Benq360 Messages postés 103 Statut Membre -
Benq360 Messages postés 103 Statut Membre -
Bonjour,
Après avoir installé opencv avec python, j'ai testé ce programme pour voir sa webcam :
je veux maintenant envoyer ceci par internet donc j'ai utilisé les sockets mais c'est la que je bloque, j'ai alors ce code pour le serveur :
et ce code pour le client :
mais il y a un probleme au niveau de la conversion et je ne vois plus trop comment faire
Si quelqu'un a une idée, n'hesitez pas
Cordialement
Après avoir installé opencv avec python, j'ai testé ce programme pour voir sa webcam :
import cv2.cv as cv
import time
import socket
cv.NamedWindow("camera", 1)
capture = cv.CaptureFromCAM(0)
while True:
img = cv.QueryFrame(capture)
cv.ShowImage("camera", img)
if cv.WaitKey(10) == 27:
break
cv.DestroyAllWindows()
je veux maintenant envoyer ceci par internet donc j'ai utilisé les sockets mais c'est la que je bloque, j'ai alors ce code pour le serveur :
import cv2.cv as cv
import time
import socket
import pygame
hote = '127.0.0.1'
port = input("Choisir un port : ")
port = int(port)
serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
serversocket.bind((hote, port))
serversocket.listen(5)
print("Le serveur attend une connexion sur le port : {}".format(port))
cv.NamedWindow("camera", 1)
while True:
connection, address = serversocket.accept()
image_recu = connection.recv(32768)
image = pygame.image.fromstring(image_recu, (320,240), "RGB" , True)
cv.ShowImage("camera", image)
if cv.WaitKey(10) == 27:
break
cv.DestroyAllWindows()
et ce code pour le client :
import cv2.cv as cv
import time
import socket
import pygame
hote = '127.0.0.1'
port = input("Entrer le port du serveur : ")
port = int(port)
clientsocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
clientsocket.connect((hote, port))
capture = cv.CaptureFromCAM(0)
while True:
img = cv.QueryFrame(capture)
image_convert = img.tostring()
clientsocket.send(image_convert)
if cv.WaitKey(10) == 27:
break
cv.DestroyAllWindows()
mais il y a un probleme au niveau de la conversion et je ne vois plus trop comment faire
Si quelqu'un a une idée, n'hesitez pas
Cordialement
A voir également:
- OpenCV Python reseau
- Opérateur de réseau mobile - Guide
- Cable reseau du player freebox - Forum Freebox
- Entrer les informations d'identification reseau - Guide
- Citizen code python - Accueil - Outils
- Entrée dans le réseau des pic - Forum Consommation & Internet
3 réponses
Bonsoir,
Je ne m'y connais pas assez pour comprendre ton code et répondre à ta question.
Mais il me semble que ce que tu veux faire nécessite une sérialisation des données, et non pas leur transformation en caractères.
Jette par exemple un oeil sur Protocol Buffer, j'ai l'impression qu'il fait ce dont tu as besoin.
Et d'autre part, si tu veux des réponses rapides et balèzes en Python, va sur le forum Python de developpez.com
Je ne m'y connais pas assez pour comprendre ton code et répondre à ta question.
Mais il me semble que ce que tu veux faire nécessite une sérialisation des données, et non pas leur transformation en caractères.
Jette par exemple un oeil sur Protocol Buffer, j'ai l'impression qu'il fait ce dont tu as besoin.
Et d'autre part, si tu veux des réponses rapides et balèzes en Python, va sur le forum Python de developpez.com