位置: IT常识 - 正文

【ZED】从零开始使用ZED相机(二):打开相机+捕获图像(从 零开始)

编辑:rootadmin
【ZED】从零开始使用ZED相机(二):打开相机+捕获图像 引言

推荐整理分享【ZED】从零开始使用ZED相机(二):打开相机+捕获图像(从 零开始),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:《从零开始》完整版 小说,《从零开始》完整版 小说,从零开始door,书名《从零开始》,“从零开始”,从零开始realize,从零开始zero,从零开始zip,内容如对您有帮助,希望把文章链接给更多的朋友!

关于ZED相机的安装和配置可以先参考【ZED】从零开始使用ZED相机(一):windows下的安装配置与测试,接下来开始二次开发ZED相机。 阅读ZED API文档,选择自己使用的语言,学会相机的基本调用函数 笔者建议:安装包的samples与官方文档配合使用效果更加 必备导入库:(后面涉及的代码都要导入这两个库)

import pyzed.sl as slimport cv2 ZED开发目录:(1)打开相机,终端打印相机的ZED相机的基本信息(2)捕获图像(左、右、深度图等)+ 获取计算的数据(视差、深度、3D数据等)【ZED】从零开始使用ZED相机(二):打开相机+捕获图像(从 零开始)

下面详细展开

1 hello_zed(初见ZED)import pyzed.sl as slimport cv2 def hello_zed(): # 创建相机对象 zed = sl.Camera() # Camera是非常重要的一个类 # 创建初始化参数对象并配置初始化参数 init_params = sl.InitParameters() init_params.sdk_verbose = False # 相机有很多可以初始化的参数,用到一个认识一个 # 打开相机(终端打开,但是看不到相机的画面,需要用到cv2.imshow显示相机画面,后面再介绍) err = zed.open(init_params) # 指定参数打开相机 if err != sl.ERROR_CODE.SUCCESS: exit(1) # 获得相机的信息,笔者列举了一部分,并不是全部信息,读者可以自行探究 zed_info = zed.get_camera_information() print('相机序列号:%s' % zed_info.serial_number) print('相机型号:%s' % zed_info.camera_model) print('相机分辨率: width:%s, height:%s' % (zed_info.camera_resolution.width, zed_info.camera_resolution.height)) print('相机FPS:%s' % zed_info.camera_fps) print('相机外部参数:') print('相机旋转矩阵R:%s' % zed_info.calibration_parameters.R) print('相机变换矩阵T:%s' % zed_info.calibration_parameters.T) print('相机基距:%s' % zed_info.calibration_parameters.get_camera_baseline()) print('初始化参数:') zed_init = zed.get_init_parameters() print('相机分辨率:%s' % (zed_init.camera_resolution)) print('深度最小:%s' % (zed_init.depth_minimum_distance)) print('深度最大:%s' % (zed_init.depth_maximum_distance)) # 关闭相机 zed.close()if __name__ == "__main__": hello_zed()2 image_capture(捕获图像)import pyzed.sl as slimport cv2 import os# 2. 捕获图像def image_capture(): zed = sl.Camera() # 设置相机的分辨率1080和采集帧率30fps init_params = sl.InitParameters() init_params.camera_resolution = sl.RESOLUTION.HD1080 # Use HD1080 video mode init_params.camera_fps = 30 # fps可选:15、30、60、100 err = zed.open(init_params) # 根据自定义参数打开相机 if err != sl.ERROR_CODE.SUCCESS: exit(1) runtime_parameters = sl.RuntimeParameters() # 设置相机获取参数 runtime_parameters.sensing_mode = sl.SENSING_MODE.STANDARD i = 0 # 创建sl.Mat对象来存储图像(容器),Mat类可以处理1到4个通道的多种矩阵格式(定义储存图象的类型) image = sl.Mat() # 图像 disparity = sl.Mat() # 视差值 dep = sl.Mat() # 深度图 depth = sl.Mat() # 深度值 point_cloud = sl.Mat() # 点云数据 # 获取分辨率 resolution = zed.get_camera_information().camera_resolution w, h = resolution.width , resolution.height x,y = int(w/2),int(h/2) # 中心点 while True: # 获取最新的图像,修正它们,并基于提供的RuntimeParameters(深度,点云,跟踪等)计算测量值。 if zed.grab(runtime_parameters) == sl.ERROR_CODE.SUCCESS: # 相机成功获取图象 # 获取图像 timestamp = zed.get_timestamp(sl.TIME_REFERENCE.CURRENT) # 获取图像被捕获时的时间点 zed.retrieve_image(image, sl.VIEW.LEFT) # image:容器,sl.VIEW.LEFT:内容 img = image.get_data() # 转换成图像数组,便于后续的显示或者储存 # 获取视差值 zed.retrieve_measure(disparity,sl.MEASURE.DISPARITY,sl.MEM.CPU) dis_map = disparity.get_data() # 获取深度 zed.retrieve_measure(depth,sl.MEASURE.DEPTH,sl.MEM.CPU) # 深度值 zed.retrieve_image(dep,sl.VIEW.DEPTH) # 深度图 depth_map = depth.get_data() dep_map = dep.get_data() # 获取点云 zed.retrieve_measure(point_cloud,sl.MEASURE.XYZBGRA,sl.MEM.CPU) point_map = point_cloud.get_data() print('时间点',timestamp.get_seconds(),'中心点视差值',dis_map[x,y],'中心点深度值',depth_map[x,y],'中心点云数据',point_map[x,y]) # 利用cv2.imshow显示视图,并对想要的视图进行保存 view = np.concatenate((cv2.resize(img,(640,360)),cv2.resize(dep_map,(640,360))),axis=1) cv2.imshow("View", view) key = cv2.waitKey(1) if key & 0xFF == 27: # esc退出 break if key & 0xFF == ord('s'): # 图像保存 savePath = os.path.join("./images", "V{:0>3d}.png".format(i)) # 注意根目录是否存在"./images"文件夹 cv2.imwrite(savePath, view) i = i + 1 zed.close()

视图显示结果如下:笔者通过设置按键“s”进行想要图像的保存,需要注意的是保存路径需要先创建好

终端打印如下:

代码中涉及的可选参数(点击关键字可进入官方文档链接)

分辨率选择

可捕获的视图

计算获得的视图

本文链接地址:https://www.jiuchutong.com/zhishi/297858.html 转载请保留说明!

上一篇:Win11任务管理器不显示GPU怎么办?三种方法解决(win11任务管理器卡死没响应)

下一篇:ORB特征(orb特征点匹配)

  • Edge浏览器闪退解决办法(Edge浏览器闪退)

    Edge浏览器闪退解决办法(Edge浏览器闪退)

  • 拼多多技术服务费怎么取消(拼多多技术服务费怎么收取的)

    拼多多技术服务费怎么取消(拼多多技术服务费怎么收取的)

  • vivox30信号不好怎么办(vivox30信号不好怎么回事)

    vivox30信号不好怎么办(vivox30信号不好怎么回事)

  • 华为应用助手悬浮窗怎么开启(华为应用助手悬浮窗怎么开启不了)

    华为应用助手悬浮窗怎么开启(华为应用助手悬浮窗怎么开启不了)

  • 手机qq音乐音译不见了(手机qq音乐音译不见了2020)

    手机qq音乐音译不见了(手机qq音乐音译不见了2020)

  • 拼多多怎么没有拼小圈(拼多多怎么没有取件码)

    拼多多怎么没有拼小圈(拼多多怎么没有取件码)

  • 移动端是手机端吗(移动端手机端学名)

    移动端是手机端吗(移动端手机端学名)

  • 开通商品橱窗需要什么条件(开通商品橱窗需要多久)

    开通商品橱窗需要什么条件(开通商品橱窗需要多久)

  • 怎么退出实名认证(怎么退出实名认证信息游戏)

    怎么退出实名认证(怎么退出实名认证信息游戏)

  • oppo手机清除数据忘记锁屏密码怎么办(oppo手机清除数据的时候也要密码怎么办)

    oppo手机清除数据忘记锁屏密码怎么办(oppo手机清除数据的时候也要密码怎么办)

  • 荣耀20pro怎么分屏(荣耀20pro怎么分屏,分屏是什么意思)

    荣耀20pro怎么分屏(荣耀20pro怎么分屏,分屏是什么意思)

  • 反向充电手机有哪些(反向充电手机有哪几款)

    反向充电手机有哪些(反向充电手机有哪几款)

  • 荣耀20pro5gwifi频率多少(荣耀20prowifi参数)

    荣耀20pro5gwifi频率多少(荣耀20prowifi参数)

  • qq资料卡点赞怎么取消(qq资料卡点赞怎么买)

    qq资料卡点赞怎么取消(qq资料卡点赞怎么买)

  • ipad触控id默认密码是什么(ipad触控id密码)

    ipad触控id默认密码是什么(ipad触控id密码)

  • 小米cc9pro怎么截屏(小米cc9e怎么截长图)

    小米cc9pro怎么截屏(小米cc9e怎么截长图)

  • 微信支付二维码怎么弄(微信支付二维码图片)

    微信支付二维码怎么弄(微信支付二维码图片)

  • oppor17机长多少厘米(oppor17手机长多少cm)

    oppor17机长多少厘米(oppor17手机长多少cm)

  • 如何关闭小爱语音引擎(如何关闭小爱语音搜索功能)

    如何关闭小爱语音引擎(如何关闭小爱语音搜索功能)

  • qq音乐的收藏mv在哪(qq音乐的收藏如何转到酷狗音乐)

    qq音乐的收藏mv在哪(qq音乐的收藏如何转到酷狗音乐)

  • 苹果生物特征识别失败(苹果设置的生物识别在哪里)

    苹果生物特征识别失败(苹果设置的生物识别在哪里)

  • Cesium三维数据格式以及生产流程详解(glb,osgb,obj,bim,ifc)等(cesium三维地球)

    Cesium三维数据格式以及生产流程详解(glb,osgb,obj,bim,ifc)等(cesium三维地球)

  • 使用nvm管理node版本,npm安装失败解决方法(nvm for window)

    使用nvm管理node版本,npm安装失败解决方法(nvm for window)

  • KNX协议介绍(kk协议)

    KNX协议介绍(kk协议)

  • 新公司第一年要做亏
  • 应交税费增值税明细账
  • 报税软件费用可以退吗
  • 调整账户和被调整账户的关系
  • 母子公司借款要交什么税
  • 营业执照三证合一是哪一年开始的
  • 个人独资企业对公账户的钱可以转到私人账户吗
  • 社保公积金会计分录怎么写
  • 沙特将开征增值税和特殊商品消费税
  • 个体户要申报
  • 材料销售的账务处理
  • 增值税的计征方法有哪些
  • 商业折扣销售会计分录
  • 采购的增值税
  • 小规模纳税人三万以下免税
  • 购货申请书
  • 联想怎么进入bios设置u盘启动
  • 企业职工教育经费
  • 食堂充值管理制度
  • linux系统的文件与目录操作
  • win11如何降到win10
  • vue页面获取url参数
  • scards32.exe - scards32是什么进程 有什么用
  • incognito.exe
  • php编程技术
  • 居民企业境外所得税抵免限额
  • 强制划缴税款
  • 非关联企业无偿借款涉及到税务会计分录处理
  • 非金融机构从事贷款谁负责监管
  • 金税盘锁住了怎么办
  • 魔改6.67
  • 图表库网站
  • vue插槽类型
  • 特征融合add
  • php中自定义函数的语法格式
  • apt-show-versions
  • javaweb:jquery中ajax的应用
  • 怎么调整利润分配
  • 小企业其他应收款坏账处理
  • 帝国cms使用手册
  • 织梦如何做提取卡密
  • 营业总收入包括营业外收入吗
  • 计提工会经费是什么工资项目
  • 资产减值损失属于
  • 自然人独资交企业所得税吗
  • 保理业务的内容有哪些
  • 管理人员工资结构
  • 多交个税收到退回怎么办
  • 出口退税的会计处理
  • 委托加工的相关法律规定
  • 进口产品内销如何交税
  • 待抵扣进项税额是什么情况下用的
  • 技术服务类有哪些
  • Centos 7.3下SQL Server安装配置方法图文教程
  • win 10怎么更换系统
  • 苹果mac怎么下载淘宝
  • centos 进程查询
  • 注册表mime
  • 操作系统启动慢怎么办
  • linux 垃圾
  • win10更新后出现windows.old
  • unity 移动应用开发
  • opengl cullface
  • opengl编程实例
  • css浏览器兼容性问题
  • php 时间差
  • nodejs使用视频教程
  • js行号显示的文字不一样
  • javascript tr
  • javascript基础入门视频教程
  • 普票怎么入账标识
  • 营改增之前建筑业税率是多少
  • 浦东税务15所
  • 中国税务手机版
  • 一季度土地市场
  • 国税总局云南省税务局官网
  • 丰田2.0和2.5混动发动机
  • 深圳市地方税务局历任局长
  • 税务稽查审理的基本原则
  • 国税地税什么时候申报
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设