• 如何使用vsCode打开intel D435i深度相机


    一、下载并安装相机SDK文件

    1.SDK下载地址:

    Release Intel® RealSense™ SDK 2.0 (v2.54.2) · IntelRealSense/librealsense · GitHub

    2.下载后,双击即可安装


     

    3.环境配置

    1)window的开始菜单,搜索环境变量,选择编辑系统环境变量

    2)选择高级,选择环境变量

    3)在系统变量里面,单击path,添加环境变量:C:\Program Files (x86)\Intel RealSense SDK 2.0\bin\x64

     4)单击图标即可打开相机软件

    5)打开软件后,通过图片操作可以打开相机

    二、安装openCV环境

    打开cmd命令提示符窗口,输入pip install opencv-python,即可实现openCV的自动安装。

    命令行输入python回车

    再输入import cv2,无报错,表明安装ok。

    1. #导入openCV库,实现相应的图片读写
    2. import cv2 #导入openCV库的代码
    3. #读取多通道
    4. color_2 = cv2.imread('2.jpg') #读取图片(316, 474, 3)
    5. print(color_2.shape) #输出通道
    6. #读取单通道
    7. gray_img = cv2.imread('2.jpg', cv2.IMREAD_GRAYSCALE)
    8. print(gray_img.shape) # 输出
    9. #指定文件的质量
    10. cv2.imwrite('anglababy.jpg',color_2,(cv2.IMWRITE_JPEG_QUALITY,1))#数字越小越模糊
    11. #绘图,用这个color_2的通道绘图
    12. cv2.imshow('my_img_name_1', color_2)
    13. cv2.imshow('my_img_name_2', gray_img)
    14. cv2.waitKey(0) # 阻塞等键盘输入, 使图片展示而不被关闭
    15. cv2.destroyAllWindows()

    简单使用例程:

    基础使用可参考博文:

    【基础知识】4、python-opencv 超详细介绍_opencv-python-CSDN博客

    三、下载pyrealsense文件,完成本地安装

    (此操作是已经完成VScode,python的安装后)

    下载地址:https://pypi.org/project/pyrealsense2/#files 

    下载版本与python版本对应,在命令行输入python即可查看版本号

    命令行输入:pip install  D:\安装文件夹\pyrealsense2-2.55.1.6486-cp311-cp311-win_amd64.whl 即可实现pyrealsense文件本地安装。

    安装完这个文件后,就可以利用VScode打开相机,相关代码为:

    1. import pyrealsense2 as rs
    2. import numpy as np
    3. import cv2
    4. if __name__ == "__main__":
    5. pipeline = rs.pipeline() #创建一个管道对象,这是进行所有后续RealSense操作的基础
    6. config = rs.config() #创建一个配置对象
    7. config.enable_stream(rs.stream.depth, 640, 480, rs.format.z16, 30)
    8. #初始化RealSenseSense摄像头,并配置为捕获640x480的深度和颜色图像;指定的深度数据格式,代表16位无符号整数;每秒30帧
    9. config.enable_stream(rs.stream.color,640, 480, rs.format.bgr8, 30)
    10. #启用彩色流,rs.format.bgr8表示每个像素由3个字节(即24位)表示,分别对应蓝色、绿色和红色通道。
    11. pipeline.start(config)
    12. #接受config的参数,启用管道
    13. try:
    14. while True: #使用while循环不断捕获图像数据,直到用户关闭窗口。
    15. frames = pipeline.wait_for_frames()
    16. # 使用wait_for_frames()函数等待捕获到一组深度和颜色图像帧的函数。返回的结果为一个包含深度和颜色帧的对象用于后续处理
    17. depth_frame = frames.get_depth_frame() #获取深度帧
    18. color_frame = frames.get_color_frame() #获取颜色帧
    19. if not depth_frame or not color_frame: #如果捕获到的帧中没有深度或颜色图像,则跳过当前循环,等待下一帧。
    20. continue
    21. depth_image = np.asanyarray(depth_frame.get_data()) # 将深度帧转换为NumPy数组
    22. color_image = np.asanyarray(color_frame.get_data()) # 将颜色帧转换为NumPy数组
    23. # cv2.applyColorMap()将深度图像转化为彩色图像,以便更好的可视化分析
    24. # cv2.convertScaleAbs(depth_image, alpha=0.03)将每个像素值乘以缩放因子0.03,像素值缩放后并返回一个8位无符号整数类型的图像
    25. # cv2.COLORMAP_JET是使用JET颜色映射表,表示将灰度映射到JET表上,生成彩色图
    26. depth_colormap = cv2.applyColorMap(cv2.convertScaleAbs(depth_image, alpha=0.07), cv2.COLORMAP_JET)
    27. # 将图像color_impage和depth_colormap水平堆叠
    28. images = np.hstack((color_image, depth_colormap))
    29. # 设置窗口,窗口大小根据图像自动调整
    30. cv2.namedWindow('RealSense', cv2.WINDOW_AUTOSIZE)
    31. # 将图像images显示在窗口中
    32. cv2.imshow('RealSense', images)
    33. #使用cv2.waitKey()函数等待用户按下键盘上的某个键,并返回按键的ASCII码。
    34. key = cv2.waitKey(1)
    35. # key&0xFF表示只取低8位,再判断是否位‘q’或者esc
    36. if key & 0xFF == ord('q') or key == 27:
    37. cv2.destroyAllWindows() # 关闭窗口
    38. break
    39. finally:
    40. # 停止管道流,释放资源
    41. pipeline.stop()

    b站相关配置视频:

    ​​​​​​​Windows下的Inter Realsens D435/D435i环境配置,深度相机用Python调用_哔哩哔哩_bilibili

  • 相关阅读:
    如何让Python2与Python3共存
    unity打包webgl 部署到本地Web服务器
    解决 win11 vmware 中centos 网络不能访问外网
    STM32:GPIO控制蜂鸣器部分(只写主函数代码部分+代码注释)
    2023新版软件测试八股文及答案解析
    mysql 导入导出命令
    2022/7/30
    [UUCTF 2022 新生赛]ezpop - 反序列化+字符串逃逸【***】
    一文详解多模态认知智能
    【计算机毕业设计】基于SpringBoot+Vue贵州旅游系统的设计与实现
  • 原文地址:https://blog.csdn.net/doudou2weiwei/article/details/139346157