ZED双目相机 样例代码学习(一)
#之前导入一直不成功,说是没有安装pyzed.sl包,只有pyzed包,还得好好整整
import pyzed.sl as sl
def main():
# --- 初始化Camera对象并且打开 ZED
# 创建一个ZED相机对象
zed = sl.Camera()
# 设置配置参数
init_params = sl.InitParameters()
init_params.camera_resolution = sl.RESOLUTION.HD720 #使用HD720视频模式,resolution是解析度
init_params.camera_fps = 60 # 将fps设置为60,fps是每秒传输帧数
# 打开照相机
err = zed.open(init_params)
if err! = sl.ERROR_CODE.SUCCESS:
print(repr(err))
exit(-1)#(-1)表示终结程序,不执行
runtime_param = sl.RuntimeParameters()
runtime_param.sensing_mode = sl.SENSING_MODE.STANDARD
# --- 主循环获取图像和深度值
# 捕获50帧并停止
i = 0
image = sl.Mat() #图像
depth = sl.Mat() #深度
while i < 50 :
# 抓取图像
if zed.grab(runtime_param) == sl.ERROR_CODE.SUCCESS : # 如果grab() 返回成功,则新图像可用
# 显示像素颜色
zed.retrieve_image(image, sl.VIEW.LEFT) # 获取左图
center_rgb = image.get_value(image.get_width() / 2, image.get_height() / 2)
print("Image ", i, " center pixel R:", int(center_rgb[0]), " G:", int(center_rgb[1]), " B:", int(center_rgb[2]))# pixel是像素
# 显示像素深度
zed.retrieve_measure(depth, sl.MEASURE.DEPTH) #获取深度图
center_depth = depth.get_value(depth.get_width() / 2, depth.get_height() /2)
print("Image ", i," center depth:", center_depth)
i = i+1
# 关闭相机
zed.close()
return 0
if __name__ == "__main__":
main()