当前位置: 首页 > news >正文

深圳做网站网络营销公司优网营销

深圳做网站网络营销公司,优网营销,上海高级网站建设,潮州seo建站目录 一、所需器件工具 二、客户端与服务器进行UDP通信 1、客户端代码 2、服务器端代码 3、效果展示 三、客户端拍照,通过UDP传输到服务器进行显示 1、客户端获取图像并UDP传输 2、电脑端服务器显示图像 3、效果展示 四、代码链接 一、所需器件工具 1.ESP3…

目录

一、所需器件工具

二、客户端与服务器进行UDP通信

1、客户端代码

2、服务器端代码

3、效果展示

三、客户端拍照,通过UDP传输到服务器进行显示

1、客户端获取图像并UDP传输

2、电脑端服务器显示图像

3、效果展示

四、代码链接


一、所需器件工具

        1.ESP32开发板:开发板购买链接

二、客户端与服务器进行UDP通信

        UDP(User Datagram Protocol)是一种无连接的、不可靠的传输层协议,它用于在计算机网络上通过数据包传输信息。

        UDP通信适用于那些对数据传输延迟要求较低、可以容忍少量数据丢失的应用场景,例如音频和视频流传输、实时游戏、DNS查询等。然而,由于UDP不提供可靠性,如果数据包在传输过程中丢失或到达顺序被打乱,应用程序需要自行处理这些问题。因此,在选择UDP作为通信协议时,需要仔细考虑应用的需求和可能的数据丢失风险。

1、客户端代码

import socket
import network#连接wifi
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
if not wlan.isconnected():wlan.connect('wifi名称', 'wifi密码')while not wlan.isconnected():pass
print('客户端的网络参数:', wlan.ifconfig())ip = ("192.168.0.105",9090) #填写服务器IP地址和端口 
# 创建一个UDP套接字并绑定到指定的IP地址和端口
s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM,0) # 创建UDP套接字#先发送后接收
s.sendto("我是ESP32-CAM客户端".encode(),ip) #向服务器发送数据,这个数据必须是 Byte类型的data,IP = s.recvfrom(1024) #接收服务器的消息
print(data.decode())

2、服务器端代码

import socket# 创建一个UDP套接字并绑定到指定的IP地址和端口
s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM,0)  # 创建UDP套接字s.bind(("192.168.0.105",9090)) # 绑定IP地址和端口(填入自身IP地址)while True:#先接收后发送data,IP = s.recvfrom(1024) #接收客户端发来的消息print(data.decode(),IP)s.sendto("我是服务器".encode(),IP) #服务器向客户端发送消息

3、效果展示

三、客户端拍照,通过UDP传输到服务器进行显示

        ESP32-CAM是一款基于ESP32芯片的摄像头模块,搭载了OV2640传感器,支持高达2百万像素的图像分辨率。它能够拍摄静态图像和简单的视频,并支持JPEG编码和解码,具备microSD卡存储能力。该模块适用于监控、物联网、教育和娱乐等多个应用领域。

        OpenCV是计算机视觉中经典的专用库,其支持多语言、跨平台,功能强大。OpenCV-Python为OpenCV提供了Python接口,使得使用者在Python中能够调用C/C++,在保证易读性和运行效率的前提下,实现所需的功能。  参考链接

1、客户端获取图像并UDP传输

        通过ESP32-CAM获取JPEG的图像数据流,具体代码实现方法:ESP32图像数据获取:http://t.csdn.cn/zdLhi。然后通过UDP通信把数据传输到服务器端,服务器获取到数据后对数据进行处理。

import socket
import network
import time
import cam#连接wifi
wlan = network.WLAN(network.STA_IF)
wlan.active(True)if not wlan.isconnected():wlan.connect('HUAWEI APL', 'APL84365170')  #输入用户名和密码while not wlan.isconnected():passprint('客户端的网络参数:', wlan.ifconfig())ip = ("192.168.3.111",9090) #服务器IP地址和端口
# 创建一个UDP套接字并绑定到指定的IP地址和端口  
s = socket.socket(socket.AF_INET,socket.SOCK_DGRAM,0) # 创建UDP套接字while True:buf = cam.camera.capture() #获取图像数据流s.sendto(buf,ip) #向服务器发送图像数据流time.sleep(0.1)  #延时0.1秒

2、电脑端服务器显示图像

        这段Python程序是一个基于UDP协议的图像接收和显示应用。它通过创建一个UDP socket,绑定到本地IP地址和端口,实时接收从指定IP地址发送过来的图像数据,然后将数据解码为图像并在窗口中显示。用户可以通过按下键盘上的"q"键来退出程序。

# 导入必要的模块  
import socket  # 用于网络通信  
import cv2  # 计算机视觉库,用于图像处理  
import io  # 用于处理流数据  
from PIL import Image  # 用于处理图像数据  
import numpy as np  # 用于进行数值计算  # 创建一个UDP套接字并绑定到指定的IP地址和端口  
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, 0)  # 创建UDP套接字  
s.bind(("192.168.3.111", 9090))  # 绑定IP地址和端口(填入自身IP地址)# 进入主循环,等待接收数据  
while True:data, IP = s.recvfrom(100000)  # 从套接字接收数据,最多接收100000字节的数据  bytes_stream = io.BytesIO(data)  # 将接收到的二进制数据转换为字节流  image = Image.open(bytes_stream)  # 从字节流中打开图像  img = np.asarray(image)  # 将图像转换为NumPy数组  # 将颜色通道从BGR转换为RGB,因为OpenCV读取图像为BGR格式,而我们通常使用的为RGB格式  img_rgb = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)  cv2.imshow("12", img_rgb)  # 显示图像,窗口名称为"12"  # 如果按下"q"键,则退出循环  if cv2.waitKey(1) == ord("q"):cv2.destroyAllWindows() # 关闭所有打开的窗口break

3、效果展示

四、代码链接

代码下载链接:https://download.csdn.net/download/qq_26043945/88368391

http://www.hkea.cn/news/56253/

相关文章:

  • 网站建设如何更加稳定seo优化前景
  • 网站速度诊断 慢seo chinaz
  • 企业网站建设合同搜索引擎优化关键词的处理
  • 做翻译的网站私人做网站
  • 广东两学一做考学网站百度网盘app免费下载安装老版本
  • 淄博有做网站的吗百度推广有哪些形式
  • 增值税怎么算免费seo快速排名系统
  • 响应式电商网站制作全网
  • 国内b2b网站a片长春做网站推广的公司
  • 网页制作视频的网站建设引擎优化seo怎么做
  • 吉林省建设厅证件查询网站今日热搜
  • 做熟食的网站美食网站搜索引擎推广方案案例
  • 企业模板网站推广优化平台
  • 赣州做网站的网站优化技术
  • 设计网站大全网公司推广咨询
  • 北京网站建设价格上海关键词排名优化公司
  • 浙江华临建设集团有限公司网站seo优化网站词
  • 服装网站建设规划书范文免费的行情网站
  • 合肥企业自助建站seo课程培训班
  • 企业网站建设总结什么软件可以免费引流
  • 个人博客网站如何做SEO雅诗兰黛网络营销策划书
  • 唐山自助建站软件seo软件优化工具软件
  • 推广电子商务网站的案例网站推广策划书模板
  • 前端外包网站网站优化快速排名软件
  • 凡客做网站cba最新消息
  • 郑州做网站好的公搜索引擎优化好做吗
  • 网站 预算白度
  • 中国电商建站程序信息推广
  • 网站开发教程 布局优化技术
  • 做外贸网站需要请外贸文员吗网站seo诊断分析和优化方案