视觉学习(一)

您所在的位置:网站首页 高程计算fh 视觉学习(一)

视觉学习(一)

2023-03-15 22:12| 来源: 网络整理| 查看: 265

最近在学习机器视觉,主要基于ZED做一些视觉算法,故记录下学习过程。本篇文章主要是获取ZED实时视频。

1.环境信息 摄像头:ZED USB接口 系统:Ubuntu18.04 2.功能实现

创建python文件,test.py

import cv2 import numpy as np import pyzed.sl as sl #python3 zed api 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() # 图像 # # 获取分辨率 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.RIGHT) # image:容器,sl.VIEW.LEFT:内容 ,右镜头 img = image.get_data() # 转换成图像数组,便于后续的显示或者储存 # 显示彩色图 view = cv2.resize(img,(640,480)) cv2.imshow("View", view) #显示图像 key = cv2.waitKey(1) #waitkey控制着imshow的持续时间 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() if __name__ == "__main__": image_capture() 3.运行 python3 test.py

在这里插入图片描述 最近好忙,都没时间写博客了。emm, 好开心又学到新知识! 希望本篇文章可以帮到你~~



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3