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

(一)ZED概述

待师弟填坑~

(二)安装ZED SDK与cuda

1.windows下安装ZED SDK、cuda与pyzed

待师弟填坑~

2.ubuntu16.04、18.04下安装ZED SDK、cuda与pyzed

待师弟填坑~
1.安装cuda(待师弟填坑)
参考ubuntu-cuda安装教程进行安装即可

2.安装SDK
首先,进入ZED官网 ,点击SDK DOWNLOAD进行选择下载。
在这里插入图片描述
然后,根据本机cuda版本以及系统版本进行匹配下载
在这里插入图片描述
以cuda10.2,Ubuntu18.04,sdk3.4.2为例,进行下载
在这里插入图片描述
最后,正式安装下载好的sdk,即.run文件

 1.进入到.run文件所在目录下打开terminal
 cd path/to/download/folder
 
 2.使用 chmod +x 给个权限
 chmod +x ZED_SDK_Ubuntu18_cuda10.2_v3.4.2.run
 
 3.安装
 ./ZED_SDK_Ubuntu18_cuda10.2_v3.4.2.run

3.安装python-API pyzed
先进入SDK目录下,然后打开terminal输入 python3 get_python_api.py即可下载pyzed…whl文件
在这里插入图片描述
安装API

pip install pyzed......whl 
即可完成安装

大功告成~
如有问题,欢迎评论区交流

(三)官方示例如何跑通

待师弟填坑~

(四)跟我学ZED-python

1.读取img

import numpy as np
import pyzed.sl as sl
import cv2

zed = sl.Camera()           # Create a ZED camera object
input_type = sl.InputType() # Set configuration parameters
init = sl.InitParameters(input_t=input_type) # Init Parameters
init.camera_resolution = sl.RESOLUTION.HD2K  # set resolution
init.coordinate_units = sl.UNIT.MILLIMETER
zed.open(init)  # Open the camera

image_size = zed.get_camera_information().camera_resolution  # retrieve half-resolution images
image_zed = sl.Mat(image_size.width, image_size.height, sl.MAT_TYPE.U8_C4)

while True:
    zed.grab()
    image_sl_left = sl.Mat()  # left_img
    zed.retrieve_image(image_sl_left, sl.VIEW.LEFT)
    image_cv_left = image_sl_left.get_data()
    image_sl_right = sl.Mat()  # right_img
    zed.retrieve_image(image_sl_right, sl.VIEW.RIGHT)
    image_cv_right = image_sl_right.get_data()
    
    ################# BGRA 转成 BGR #################
    image_cv_left = cv2.cvtColor(image_cv_left, 1)
    image_cv_right = cv2.cvtColor(image_cv_right, 1)
    ################# BGRA 转成 BGR #################

    img_sbs = np.concatenate((image_cv_left, image_cv_right), axis=1)
    img = cv2.resize(img_sbs, (int(image_size.width/1.2), int(image_size.height/2)))
    # print(111111,img)
    
    cv2.imshow("ZED-img", img)
    cv2.waitKey(10)

在这里插入图片描述

2.读取depth

import numpy as np
import pyzed.sl as sl
import cv2

zed = sl.Camera()           # Create a ZED camera object
input_type = sl.InputType() # Set configuration parameters

init = sl.InitParameters(input_t=input_type)  # 初始化
init.camera_resolution = sl.RESOLUTION.HD1080 # 相机分辨率(默认-HD720)
init.depth_mode = sl.DEPTH_MODE.ULTRA         # 深度模式  (默认-PERFORMANCE)
init.coordinate_units = sl.UNIT.MILLIMETER    # 毫米级    (默认-MILLIMETER)

zed.open(init)  # Open the camera

image_size = zed.get_camera_information().camera_resolution
image_size.width = image_size.width / 2   # retrieve half-resolution images
image_size.height = image_size.height / 2 # retrieve half-resolution images
image_zed = sl.Mat(image_size.width, image_size.height, sl.MAT_TYPE.U8_C4)
depth_image_zed = sl.Mat(image_size.width, image_size.height, sl.MAT_TYPE.U8_C4)
key = ''
while key != 113:
    zed.grab()
    zed.retrieve_image(image_zed, sl.VIEW.LEFT, sl.MEM.CPU, image_size)       # Retrieve the "left image, depth image" in the half-resolution
    zed.retrieve_image(depth_image_zed, sl.VIEW.DEPTH, sl.MEM.CPU, image_size)

    image_ocv = image_zed.get_data()
    print(image_ocv)
    depth_image_ocv = depth_image_zed.get_data()

    img = np.hstack([image_ocv, depth_image_ocv])
    img = cv2.resize(img, (800, 400))
    cv2.imshow("ZED-depth", img)
    key = cv2.waitKey(5)
cv2.destroyAllWindows()
zed.close()

在这里插入图片描述

  • 20
    点赞
  • 85
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 42
    评论
### 回答1: Zed2双目相机C开发是一种基于NVIDIA Jetson TX2平台的深度感知解决方案。该相机是一个小型、轻便的设备,可以实现实时的深度感知以及三维重构功能。 Zed2双目相机C开发可以被应用于机器人技术、虚拟现实技术、自动驾驶技术等领域。对于机器人技术而言,该相机可以帮助机器人实现立体视觉和深度感知,从而更好地理解环境和完成任务。对于虚拟现实技术来说,该相机可以实现更高精度的位置追踪,提升用户体验。 此外,Zed2双目相机C开发还具有并行计算能力,可以实现实时深度感知和三维重构。同时,该相机还可以进行AI加速,加速数据处理速度,提升系统的实时性和响应速度。 总的来说,Zed2双目相机C开发为深度感知领域提供了一个全新的解决方案,具有多种优势,可以为众多应用领域提供更高的精度和效率。 ### 回答2: zed2双目相机是一款先进的双目立体成像设备,其采用高质量的成像技术,可以对物体进行全面、精准的测量和观察。在人工智能、机器人、自动驾驶等领域,具有重要的应用前景。 zed2双目相机c开发是一项非常复杂的任务,需要丰富的硬件和软件支持。在硬件方面,开发人员需要了解相机的基本结构、工作原理、信号传输等关键要素,以确保相机的高质量工作。在软件方面,开发人员需要开发相应的算法和程序,以实现数据采集、图像处理、测量分析等功能。 在开发zed2双目相机c时,需要注意以下几个方面: 1. 硬件设计。开发人员需要根据应用场景需求进行相应的硬件设计,如制作机械结构支持、电源管理模块等。 2. 软件编程。开发人员需要使用各种编程语言,如C、C++等,编写相应的程序,实现数据采集、图像处理、测量分析等功能。 3. 算法优化。开发人员需要使用各种算法来实现图像处理、测量分析等功能,并对其进行优化,以提高算法的效率和精度。 总之,zed2双目相机c开发是一项非常复杂的任务,需要开发人员具备深厚的硬件和软件技术知识,并进行深入研究和不断实践,以完善该设备的功能和性能,应对不断变化的市场需求。 ### 回答3: zed2是一种双目相机,可以将两个摄像头的影像数据融合,得到更精准的景深信息,在3D场景应用广泛。zed2双目相机c开发,则是对于zed2相机的C语言开发使用zed2相机进行3D影像采集需要一定的程序开发,通过C语言开发zed2相机的应用程序可以更加高效地处理图像数据,并且实现不同的应用功能。zed2双目相机c开发可以用于机器人、自动驾驶、医疗等领域。在机器人领域,zed2双目相机c开发可以用于3D地图的构建与导航,同时也可以用于机器人的实时定位与姿态估计。在自动驾驶领域,zed2双目相机c开发可以用于视觉辅助驾驶、交通标志识别等场景。在医疗领域,zed2双目相机c开发可以用于立体纹理重建、手术导航等场景。双目相机c开发使用C语言对zed2相机程序进行设计开发,需要了解相机硬件的具体参数和相关的开发工具,同时也需要对于图像处理算法、计算机视觉有较深的基础。越来越多的应用场景需要zed2双目相机c开发,对于开发人员来说也提供了更多的发展机会。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 42
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Albot-CV

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值