笔者通过在一台重装windows系统的笔记本上,从安装开始一步步使用ZED,希望用一系列笔记的方式完成一个比较完善的ZED使用专栏,笔者整理思路的同时,也能给读者一定的参考。
目前笔者使用的笔记本安装win10 20H2的系统,以及自带的NVIDIA GeForce 940 MX GPU和i5-7200的CPU,其他的环境基本没有安装。从零开始安装和配置ZED所需的基本环境。
这部分笔者参考博客:ZED相机学习笔记1——安装与配置(Win10 + Python)
ZED双目相机型号是ZED 2 立体相机(ZED2 Stereo Camera,Stereolabs , San Francisco, USA),其中还包括USB 3.0 数据线,以及一个迷你三脚架。
这部分可以参考笔者的博客【windows10】安装显卡驱动+cuda+cudnn
nvidia-smi # 查看显卡驱动信息
nvcc -V # 查看CUDA的信息
下载与电脑操作系统以及CUDA版本对应的SDK,官方下载链接如下:ZED-SDK下载官网
笔者下载的版本信息如下:
双击进行安装,安装过程截图如下:
默认安装地址
安装完成!
C:\Program Files (x86)\ZED SDK\dependencies\freeglut_2.8\x64
C:\Program Files (x86)\ZED SDK\dependencies\glew-1.12.0\x64
C:\Program Files (x86)\ZED SDK\dependencies\opencv_3.1.0\x64
C:\Program Files (x86)\ZED SDK\bin
进入ZED SDK文件夹中的tools子文件夹,运行ZED Explorer.exe 以及 ZED Depth Viewer.exe,查看ZED相机是否能正常启用工作
首先安装好opencv-python,参考博客:【Anaconda】安装OpenCV
终端进入ZED SDK 安装文件夹运行get_python_api.py文件(该文件可以自动检测操作系统、CUDA 和 Python 版本并下载相应的预编译 Python API 包(pyzed))
指令如下:
cd C:\Program Files (x86)\ZED SDK
python get_python_api.py
# 下载全路径
pip install D:\TOOL\pyzed-3.5-cp39-cp39-win_amd64.whl -i https://pypi.douban.com/simple
2022年02月22日更新
------------------------------------------------------------------------------------------------------------------------
下载以下三个文件(补充PyOpenGL、PyOpenGL_accelerate
)放在SDK文件夹下面
注意:笔者截图的版本不一定是读者可运行的版本,具体的版本需根据运行以下指令报错时提示的版本
python get_python_api.py
pip install pyzed-3.6-cp37-cp37m-win_amd64.whl -i https://pypi.douban.com/simple
pip install PyOpenGL-3.1.5-cp37-cp37m-win_amd64.whl -i https://pypi.douban.com/simple
pip install PyOpenGL_accelerate-3.1.5-cp37-cp37m-win_amd64.whl -i https://pypi.douban.com/simple
再执行
python get_python_api.py
终端显示如下:
完整实现ZED_SDK环境搭建!
------------------------------------------------------------------------------------------------------------------------
新建文件test.py,内容如下:
import pyzed.sl as sl
def main():
# Create a Camera object
zed = sl.Camera()
# Create a InitParameters object and set configuration parameters
init_params = sl.InitParameters()
init_params.sdk_verbose = False
# Open the camera
err = zed.open(init_params)
if err != sl.ERROR_CODE.SUCCESS:
exit(1)
# Get camera information (ZED serial number)
zed_serial = zed.get_camera_information().serial_number
print("Hello! This is my serial number: {0}".format(zed_serial))
# Close the camera
zed.close()
if __name__ == "__main__":
main()