位置: 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特征点匹配)

  • 快手日历提醒怎么删除(快手日历提醒怎么取消设置)

    快手日历提醒怎么删除(快手日历提醒怎么取消设置)

  • 微信怎么把视频声音取消了(微信怎么把视频和图片一起发朋友圈)

    微信怎么把视频声音取消了(微信怎么把视频和图片一起发朋友圈)

  • 苹果7plus返回键如何设置(苹果7plus返回键坏了能修吗)

    苹果7plus返回键如何设置(苹果7plus返回键坏了能修吗)

  • 美图秀秀怎么加水印(美图秀秀怎么加满屏水印)

    美图秀秀怎么加水印(美图秀秀怎么加满屏水印)

  • 不是微信好友怎么拉进群(不是微信好友怎么删除对方)

    不是微信好友怎么拉进群(不是微信好友怎么删除对方)

  • 华为侧边栏怎么设置(华为侧边栏怎么删除横线应用)

    华为侧边栏怎么设置(华为侧边栏怎么删除横线应用)

  • QQ如何关闭校园扩列(qq怎么关闭学生模式)

    QQ如何关闭校园扩列(qq怎么关闭学生模式)

  • 抖音里收藏的音乐怎么删掉(抖音里收藏的音乐在剪映里怎么找不到)

    抖音里收藏的音乐怎么删掉(抖音里收藏的音乐在剪映里怎么找不到)

  • 直播中的点赞有什么用(直播的点赞有没有钱)

    直播中的点赞有什么用(直播的点赞有没有钱)

  • 机顶盒光纤亮红灯怎么回事(机顶盒显示光纤红灯)

    机顶盒光纤亮红灯怎么回事(机顶盒显示光纤红灯)

  • 趣头条不能领金币是怎么回事(趣头条30元提现怎么没有了)

    趣头条不能领金币是怎么回事(趣头条30元提现怎么没有了)

  • 抖音超级乐迷标志是什么意思(抖音超级乐迷标题怎么写)

    抖音超级乐迷标志是什么意思(抖音超级乐迷标题怎么写)

  • 苹果不越狱怎么下载安卓游戏(苹果不越狱怎么用kuaidial)

    苹果不越狱怎么下载安卓游戏(苹果不越狱怎么用kuaidial)

  • iphone11pro max配什么耳机(苹果11pro max应配对什么型号蓝牙耳机)

    iphone11pro max配什么耳机(苹果11pro max应配对什么型号蓝牙耳机)

  • 英特尔快速储存技术怎么用(英特尔快速储存技术怎么关闭)

    英特尔快速储存技术怎么用(英特尔快速储存技术怎么关闭)

  • 优酷怎么取消同步记录(取消优酷app)

    优酷怎么取消同步记录(取消优酷app)

  • ppsx怎么转换成ppt(ppsx怎么转换成视频mp4)

    ppsx怎么转换成ppt(ppsx怎么转换成视频mp4)

  • 高德地图怎么切换横屏(高德地图怎么切换卫星地图)

    高德地图怎么切换横屏(高德地图怎么切换卫星地图)

  • 手机元屏和组屏区别(手机屏幕组和元)

    手机元屏和组屏区别(手机屏幕组和元)

  • 三星note10 防水么(三星note10+5g防水)

    三星note10 防水么(三星note10+5g防水)

  • 华为荣耀v9有人脸识别吗(华为荣耀v9手机)

    华为荣耀v9有人脸识别吗(华为荣耀v9手机)

  • 亚马逊国际站开店-(亚马逊国际站什么意思)

    亚马逊国际站开店-(亚马逊国际站什么意思)

  • emui9.1怎么升级(emui9.1怎么升级到10)

    emui9.1怎么升级(emui9.1怎么升级到10)

  • 蓝牙耳机延迟解决办法(蓝牙耳机延迟解决软件)

    蓝牙耳机延迟解决办法(蓝牙耳机延迟解决软件)

  • 解决Mac上不能写入NTFS文件格式的移动硬盘的方法(mac只能读不能写)

    解决Mac上不能写入NTFS文件格式的移动硬盘的方法(mac只能读不能写)

  • Spring Boot 学习笔记(spring boot怎么学)

    Spring Boot 学习笔记(spring boot怎么学)

  • 购买二手车是否适用消费者权益保护法
  • 增值税专用发票电子版
  • 外经证办好了后怎么开票
  • 合并报表存货增值如何做账
  • 营业成本包含折旧费吗
  • 住房贷款专项扣除
  • 小规模收入超过多少必须转一般纳税人
  • 发票已开后 对方公司名称变更怎么处理
  • 无形资产有合同约定,怎么摊销?
  • 污水处理费免征增值税申报怎么填写
  • 资产减值确定计量原则包括哪些
  • 公司零申报怎么注销
  • 股权转让有哪些方式
  • 自来水公司代收污水处理费账务处理
  • 用友软件作废凭证
  • 税务稽查补缴的税款怎么处理
  • 机打发票丢失如何处理报销
  • 免征政府性基金预缴税款
  • 工会筹备金交给谁
  • 无形资产的入账价值包括宣传费吗
  • 开票资料地址填营业执照
  • 跨地区经营汇总纳税企业所得税
  • 进项税和销项税怎么理解
  • 修理厂年收入
  • 该系统的软件
  • cpu天梯图2022最新排行榜
  • 无线网连上却上不了网络
  • scanregistry.exe - scanregistry是什么进程 有什么用
  • 研发销售型企业
  • 项目竣工决算审计与工程结算审核的区别是
  • 再就业优惠怎么办理
  • 企业重组特殊性税务处理计税基础
  • 作废发票需要拿回执单吗
  • php微信公众号开源框架
  • 申请专利费用计入哪个科目
  • 增值税发票开了没有抵扣有什么后果?
  • ps怎么选中图形放大
  • 暂估收入如何做账
  • 哪些企业不需要做安评
  • 返聘人员的工资需要交税吗?
  • phpcms视频教程
  • 企业贷款贴息怎么做账
  • mysql查询表里数据
  • 织梦图片要放哪里
  • sql行列转换结果保存为新表
  • 培训费 会议费
  • 工会经费到底怎么算
  • 如何计提五险一金比例
  • 国税定额发票有什么用
  • 施工企业应收账款确认依据
  • 关于爱在线观看电影完整版
  • ubuntu怎么安装程序
  • linux进程管理器
  • winpe.wim怎么安装
  • pe系统找不到系统
  • 用虚拟光驱安装系统教程
  • xp系统java环境变量配置
  • mac电脑登录
  • win7右下角的网络连接不显示
  • windows 10 开始菜单
  • win10系统中怎么重新启动netframework
  • Win10预览版镜像
  • opengl画矩形函数
  • opengl多级采样消除锯齿有什么用
  • JavaScript的函数库
  • 手机摇一摇插件
  • 批处理文件.bat
  • 收藏了很久的句子
  • unity画面效果润色
  • vue实现滚动条
  • 批处理自动登录有密码的程序
  • 用python写一个学生信息管理系统
  • nodejs递归创建目录
  • javascript教程推荐知乎
  • unity ugui组件
  • js模拟点击事件onclick
  • 广西空置房物业费减免政策吗
  • 保险公司优惠的款项什么时候退款
  • 税务报运维需要多长时间
  • 漳州市税务局电话多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设