從客戶端推json到服務器端的工做能夠用flask很容易作到,那麼須要推送圖片的話能夠先將圖片存到json中再進行操做。python
from flask import request, Flask import json import numpy as np app = Flask(__name__) @app.route("/frame", methods=['POST']) def get_frame(): res = request.json # 獲取推過來的json,也能夠用data而後轉換成json # res = json.loads(request.data) frame = eval(res["image"].decode("base64")) # dtype爲int32 frame = np.array(frame, dtype=np.uint8) cv2.imshow("frame", frame) cv2.waitkey(0) if __name__ == "__main__": app.run("0.0.0.0", port=8081) #端口爲8081
PS:關於request函數獲取的內容能夠具體參考這裏json
import cv2 import json img = cv2.imread("/your/image") res = {"image": str(img.tolist()).encode('base64')} # img是ndarray,沒法直接用base64編碼,不然會報錯
import requests _ = requests.post("/your/server/url", json=res) # 好比這裏/http://192.168.1.112:8081/frame # _ = requests.post("/your/server/url", data=json.dumps(res)) # 若是服務器端獲取的方式爲data