import cv2
from io import BufferedReader, BytesIO
#获取一张图片
cap = cv2.VideoCapture(0)
ret, frame = cap.read()
##进行转换
img_encode = cv2.imencode('.jpg', frame )[1]
str_encode = img_encode.tostring()#将array转化为二进制类型
f4 = BytesIO(str_encode)#转化为_io.BytesIO类型
f4.name = 'xx.jpg'#名称赋值
f5 = BufferedReader(f4)#转化为_io.BufferedReader类型
# # 使用requests.post发送图像数据:
# url = 'http://×××××/SaveFile/' #对应的url
# files = {'picName': f5}
# r = requests.post(url, files=files) #这里发送图片
# print(r.text) #返回的数据
整了半天,发现网上的方法不太行。找到个这个,成功上传,记录一下。
另外上传本地图片使用如下:
def updata(img_path):
url="xxxxxxxxxxxxxxxx"
file = {"file": open(img_path, "rb")}
response = requests.post(url=url, files=file)
return(response.text)