yolov8直接调用zed相机实现三维测距(python)_yolov8检测物体的世界坐标高度

yolov8直接调用zed相机实现三维测距(python)_yolov8检测物体的世界坐标高度(1) 【代码】yolov8直接调用zed相机实现三维测距(python)_yolov8检测物体的世界坐标高度(1) 阅读详情

from time import sleep

import ogl_viewer.viewer as gl
import cv_viewer.tracking_viewer as cv_viewer

lock = Lock()
run_signal = False
exit_signal = False

def xywh2abcd(xywh, im_shape):
output = np.zeros((4, 2))

# Center / Width / Height -> BBox corners coordinates
x_min = (xywh[0] - 0.5\*xywh[2]) #\* im\_shape[1]
x_max = (xywh[0] + 0.5\*xywh[2]) #\* im\_shape[1]
y_min = (xywh[1] - 0.5\*xywh[3]) #\* im\_shape[0]
y_max = (xywh[1] + 0.5\*xywh[3]) #\* im\_shape[0]

# A ------ B
# | Object |
# D ------ C

output[0][0] = x_min
output[0][1] = y_min

output[1][0] = x_max
output[1][1] = y_min

output[2][0] = x_max
output[2][1] = y_max

output[3][0] = x_min
output[3][1] = y_max
return output

def detections_to_custom_box(detections, im0):
output = []
for i, det in enumerate(detections):
xywh = det.xywh[0]

    # Creating ingestable objects for the ZED SDK
    obj = sl.CustomBoxObjectData()
    obj.bounding_box_2d = xywh2abcd(xywh, im0.shape)
    obj.label = det.cls
    obj.probability = det.conf
    obj.is_grounded = False
    output.append(obj)
return output

def torch_thread(weights, img_size, conf_thres=0.2, iou_thres=0.45):
global image_net, exit_signal, run_signal, detections

print("Intializing Network...")

model = YOLO(weights)

while not exit_signal:
    if run_signal:
        lock.acquire()

        img = cv2.cvtColor(image_net, cv2.COLOR_BGRA2RGB)
        # https://docs.ultralytics.com/modes/predict/#video-suffixes
        det = model.predict(img, save=False, imgsz=img_size, conf=conf_thres, iou=iou_thres)[0].cpu().numpy().boxes

        # ZED CustomBox format (with inverse letterboxing tf applied)
        detections = detections_to_custom_box(det, image_net)
        lock.release()
        run_signal = False
    sleep(0.01)

def main():
global image_net, exit_signal, run_signal, d

yolov8直接调用zed相机实现三维测距(python)_yolov8检测物体的世界坐标高度(2) 附:Zed调用YOLOv7测距也已经实现,但是3060笔记本6G显存带不动,在大现存服务器上可以运行,可能是由于YOLOv7网络结构导致的,由于不具备普适性,就不再写相关文章了,有需要的可以仿照这个代码去改写。 阅读详情

相关推荐

Jetson Orin部署YOLOv11与深度相机实现实时目标测距

目标检测是计算机视觉的基础任务,其核心原理是通过深度学习模型在图像中定位并识别物体。YOLO系列模型因其出色的速度与精度平衡,成为边缘部署的热门选择。结合深度感知技术,系统不仅能识别物体类别,还能获取其三维空间位置,这极大地提升了机器对环境的理解能力,具有重要的技术价值。在机器人导航、自动驾驶避障、工业自动化等应用场景中,实时、精准的目标测距是关键需求。本文聚焦于将最新的YOLOv11模型与深度相机结合,在NVIDIA Jetson Orin边缘计算平台上,通过TensorRT加速和深度数据对齐,构建一套高

weixin_34023982的博客 347

四足机器人图书馆自主导航:LiDAR与深度相机融合方案

自主导航是服务机器人落地的核心能力,其本质是在未知环境中实现高精度定位、动态建图与安全路径规划。在弱纹理、高动态、多障碍的室内场景中,单一传感器往往面临点云稀疏、深度失效或语义缺失等瓶颈。LiDAR凭借毫米级测距稳定性成为几何感知基石,而深度相机则提供稠密空间信息与目标语义理解能力——二者融合并非简单叠加,而是通过时空同步、因子图优化与语义-几何逻辑校验,构建鲁棒的环境认知闭环。该技术路线已广泛应用于图书馆、医院、档案馆等对安全性、厘米级贴边行驶与实时避障要求严苛的公共服务场景,为特种机器人从实验室走向真实

ainixi7099的博客 337

入门Python开发ZED双目相机-(持续更新中ing)

ZED双目立体相机(一)ZED概述(二)安装ZED SDK与cuda1.windows下安装ZED SDK、cuda与pyzed2.ubuntu16.04、18.04下安装ZED SDK、cuda与pyzed(三)官方示例如何跑通(四)跟我学ZED-python1.读取img2.读取depth (一)ZED概述 待师弟填坑~ (二)安装ZED SDK与cuda 1.windows下安装ZED SDK、cuda与pyzed 待师弟填坑~ 2.ubuntu16.04、18.04下安装ZED SDK、cuda与p

AIbot 7229

yolov8直接调用zed相机实现三维测距(python)

yolov8直接调用zed相机实现三维测距(python)

积极向上的mr.d的博客 3159

双目测距与行人检测融合的倒车辅助系统实战解析

计算机视觉技术正在深入车载安全场景,其中双目测距、行人检测与倒车辅助的结合已成为典型的工程落地方向。双目视觉通过模拟人眼视差原理,利用左右相机图像匹配计算深度信息,相比超声波和单目方案,在0.3至5米范围内能提供更稳定的绝对距离估计。OpenCV中的SGBM算法是视差计算的核心,配合相机标定、极线校正和WLS滤波,可生成可靠的深度图。而YOLOv8行人检测模型则负责从RGB图像中识别目标,并将检测框与深度图融合,提取精确的距离数据。这一技术链不仅适用于倒车预警,还可扩展至机器人避障、安防监控等领域。本文从相

weixin_34356555的博客 398

C++实现无人机吊舱单目相机毫米级目标定位

单目相机三维定位是嵌入式视觉中的基础技术难题,其核心在于通过几何约束与运动学建模,在缺乏深度传感器条件下解算目标空间坐标。传统方法依赖标定精度与稳定姿态,而无人机吊舱场景进一步引入振动干扰、实时性瓶颈和坐标系动态耦合等工程挑战。本文聚焦C++工程落地,结合目标尺寸先验、云台姿态反馈与查表式三角解算,构建抗干扰、低延迟、可部署的单目定位流水线,适用于ARM平台实时视觉系统开发,尤其适配植保、巡检等资源受限的无人机吊舱应用。

weixin_29165465的博客 357

OpenGL-Viewer:简单的 OpenGL 场景可视化

OpenGL-查看器 简单的场景实现,使用 glut 来创建一个带有一些四处移动的原始对象的视口。 您可以通过按以下键移动“相机”: BckSp:在平移和旋转模式之间切换。 P :在预投影和正交投影之间切换。 W:平移/向上旋转。 S:平移/向下旋转。 A:向左平移/旋转。 D:向右平移/旋转。

yolov8调用zed相机实现三维测距(版本一)

yolov8调用zed相机实现三维测距(版本一),具体内容见博客https://blog.csdn.net/qq_45077760?type=blog

PWM控制技术+Simulink仿真详解

想要理解SVPWM控制技术,首先要了解PWM控制技术。 PWM控制技术就是对脉冲宽度进行调制的技术,通过对一系列脉冲宽度进行调制来等效获得所需要的波形(包括形状和幅值)。 PWM控制的基本原理:冲量(窄脉冲的面积)相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果(输出响应波形)基本相同,即面积等效原理;用一系列幅值相等,宽度按一定规律变化的高频脉冲序列代替期望的输出波形,多用于逆变电路的控制; PWM信号生成的方法有:计算法、调制法、跟踪法,主要对调制法进行详解 ...

小师兄的学习记录 5万+

angular中访问本地json文件

先在assets文件夹下写一个json文件,这样在打完包之后也可以手动修改json文件内容 1、在需要访问本地json文件的ts文件里面引入 import{HttpClient}from'@angular/common/http'; 2、用ajax请求调用,我这里是用已经封装好的ajax请求调用 gethttp = ()=>{ var self = this self.ajax.getAjax("../../assets/server.json","g...

蜗牛~~ 1825

STM32外围电路硬件解析

复位 :让MCU回到最开始的状态。并且从头开始,重新执行程序 我们什么时候需要复位? 1.烧录的时候 2.程序跑飞了的时候 3.上电复位(上电的时候需要复位) 复位方式: 1.上电复位: --- 一定要有 MCU的Reset是复位引脚,当这个引脚为低电平时,

qq_39577221的博客 1万+

UFS总体介绍及FPGA开发

通过实现UFS的主控制器、设备控制器等组件,我们可以在FPGA上进行UFS开发,并实现高速数据传输和低功耗特性的存储解决方案。物理层负责传输物理信号,数据链路层提供数据包的传输和错误检测功能,传输层处理数据包的分段、重组和重传,逻辑层管理设备和主控制器之间的命令和数据传输,文件系统层负责文件管理和数据存储。在本文中,我们将介绍UFS的总体架构和特性,并探讨如何在FPGA上进行UFS开发。这些组件的实现涉及到UFS协议的具体细节和硬件平台的特性,因此需要参考UFS协议规范和FPGA开发平台的相关文档。

PodProgram的博客 2118

【vsomeip3 教程】SOME/IP中间件去抖策略全解析

本文探讨了在SOME/IP中间件中实现Debounce(去抖动)机制的必要性和实现原理。文章首先分析了中间件层进行Debounce的四大动机:多订阅者共享收益、语义显式化、协议噪声屏蔽和入口处背压控制。接着详细阐述了Debounce的底层原理,包括变化检测机制(ignore和mask的应用)、时间门控策略(interval的两种时间基准)以及超时补发机制,并通过表格清晰展示了不同参数组合的效果和适用场景。最后,文章提出了工程落地的具体方法,包括策略选型、ignore/mask的设计方法论以及分层验证调试的实

探索C++编程的奥秘,分享深入的技术见解和实践,旨在激发读者创造力与解决问题的思维。 221

泛微OA集成阿里云短信(E9保姆教程)

泛微OA集成阿里云短信(E9保姆教程)

技术分享 509

如何使用CPU-Z获取内存条频率信息(编程)

当我们需要获取计算机内存条的频率信息时,可以利用CPU-Z这个工具来实现。CPU-Z是一款专门用于获取计算机硬件信息的工具,它提供了API接口,我们可以通过编程的方式来获取内存条频率信息。你可以从CPU-Z官方网站下载适用于你的操作系统的CPU-Z程序,并从安装目录中找到。函数,我们可以初始化CPU-Z,如果返回值不为0,则表示初始化失败。函数来获取内存条频率信息,如果返回值小于等于0,则表示获取失败。函数来初始化CPU-Z并获取内存条频率信息。最后,我们将获取到的内存条频率信息打印输出,并使用。

ByteProwl的博客 446

SolidWorks2020详细步骤安装教程

1、在安装软件前请断开网络连接,需要安装.NETFramework3.5和4.0,最后还要确保把之前安装的旧版本完全卸载,以管理员身份运行SolidWorks_Flexnet_Server\server_remove.bat,然后等到服务“SolidWorksFlexnet服务器”将被删除。12、先不要运行软件,找到_SolidSQUAD_文件夹,将文件夹“ProgramFiles\SOLIDWORKSCorp”中的所有破解文件复制替到“ProgramFiles\SOLIDWORKSCorp”目录下;

qq_53545309的博客 1万+

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

上一篇: Sklearn 中的可用数据集
下一篇: 【python】(16)python的字典dict按照key或value排序的不同方法(1)
普通网友
博客等级 码龄3年 2111粉丝 206原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值