大疆无人机搭载树莓派进行目标旋转检测

环境部署

首先是环境创建,创建虚拟环境,名字叫 pengxiang

python 复制代码
python -m venv pengxiang

随后激活环境

python 复制代码
source pengxiang/bin/activate

接下来便是依赖包安装过程了:

python 复制代码
pip install onnxruntime  #推理框架
pip install fastapi uvicorn[standard]  #网络请求与响应
pip install tensorflow  #由于使用的是tflite推理,所以需要安装
pip install opencv-python #安装opencv的图像包
pip install python-multipart  #解析 multipart 编码的请求体

至此环境就基本安装完成了,我们启动服务:

请求处理

python 复制代码
 uvicorn app:app --host 0.0.0.0 --port 16566

使用python发送请求

python 复制代码
import cv2
import requests
# 配置服务器地址
server_url = "http://10.13.14.68:16566/api/detect/"#
# 打开摄像头
cap = cv2.VideoCapture(0)  # 参数 0 表示默认摄像头
i=0
while True:
    # 读取一帧图像
    ret, frame = cap.read()
    if not ret:
        print("无法读取摄像头数据!")
        break
    # 将图像编码为 JPEG 格式
    _, img_encoded = cv2.imencode(".jpg", frame)
    files = {"file": ("frame.jpg", img_encoded.tobytes(), "image/jpeg")}
    # 设置 distance 参数
    params = {"distance": 6}  # 这里可以动态设置 distance 的值
    try:
        # 发送 POST 请求
        response = requests.post(server_url, files=files, params=params,verify=False)  # 忽略 SSL 验证
        result = response.json()
        i=i+1
        print("检测次数:", i)
        # 处理返回结果
        print("检测结果:", result)
    except Exception as e:
        print(f"请求失败: {e}")
# 释放资源
cap.release()
cv2.destroyAllWindows()

请求结果,可以看到基本稳定在350毫秒作用,足够满足我的要求

我们看一下最终的实现效果:

相关推荐
要努力啊啊啊1 天前
YOLOv2 正负样本分配机制详解
人工智能·深度学习·yolo·计算机视觉·目标跟踪
Ailerx1 天前
YOLOv13震撼发布:超图增强引领目标检测新纪元
人工智能·yolo·目标检测
埃菲尔铁塔_CV算法2 天前
基于 TOF 图像高频信息恢复 RGB 图像的原理、应用与实现
人工智能·深度学习·数码相机·算法·目标检测·计算机视觉
cver1232 天前
野生动物检测数据集介绍-5,138张图片 野生动物保护监测 智能狩猎相机系统 生态研究与调查
人工智能·pytorch·深度学习·目标检测·计算机视觉·目标跟踪
学技术的大胜嗷2 天前
离线迁移 Conda 环境到 Windows 服务器:用 conda-pack 摆脱硬路径限制
人工智能·深度学习·yolo·目标检测·机器学习
kyle~2 天前
目标检测在国防和政府的应用实例
人工智能·目标检测·计算机视觉
weixin_377634842 天前
【数据增强】精细化贴图数据增强
人工智能·目标检测·贴图
加油吧zkf2 天前
目标检测新纪元:DETR到Mamba实战解析
图像处理·人工智能·python·目标检测·分类
txwtech3 天前
第10.4篇 使用预训练的目标检测网络
人工智能·计算机视觉·目标跟踪
一花·一叶3 天前
基于昇腾310B4的YOLOv8目标检测推理
yolo·目标检测·边缘计算