我對我的項目工作,其中II想從我的攝像頭拍攝的視頻幀,發送到遠程客戶端的蟒蛇,我使用OpenCV中捕捉幀,但我已經把它發送到遠程客戶端框架框架沒有保存在服務器... 我被困在這裏,因爲一週請幫我 我應該將它轉換爲字符串通過套接字發送?如果是,那麼如何? PLS幫我我的代碼是轉換爲字符串在python
import cv2
import socket
import base64
host = "localhost"
port = 6052
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind((host,port))
s.listen(5)
print "server started...."
#if __name__ == "__main__":
while True:
c, addr = s.accept()
print "client connected..."
capture = cv2.cv.CaptureFromCAM(0)
#cv2.cv.NamedWindow('image')
frame = cv2.cv.QueryFrame(capture)
#cv2.cv.ShowImage('image', frame)
#succ, ig = cv2.cv.LoadImage(capture)
with open(frame,"rb") as f:
es = base64.b64encode(f.read())
stri = str.decode('base64','strict')
print "string is " + stri
#with open(ig, "rb") as f:
# b = f.read(87029)
# print "data = " + b
# c.send(b)
#k = cv2.cv.WaitKey(10)
#if k % 256 ==27 :
#break
#cv2.DestroyWindow('image')
s.close()
究竟是_proble m_與此代碼?它做錯了什麼? – abarnert 2014-09-21 01:10:55
問題發生在c.send(b)行,它表示必須輸入錯誤,我無法將幀發送給客戶端.. – Learner 2014-09-21 01:15:54
那麼,_什麼是'b'?_粘貼異常和回溯,並告訴我們「b」的類型是什麼。 (如果你不知道,只需要問Python:'print(type(b))'。另外,告訴我們這是Python 2.x還是3.x.給我們一些實際運行的代碼,如果你想要任何人幫助你調試它;這段代碼只給出了'ig'變量上的'NameError'。 – abarnert 2014-09-21 01:20:00