如何使用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。

#导入openCV库,实现相应的图片读写
import cv2  #导入openCV库的代码
#读取多通道
color_2 = cv2.imread('2.jpg')  #读取图片(316, 474, 3)
print(color_2.shape)  #输出通道
#读取单通道
gray_img = cv2.imread('2.jpg', cv2.IMREAD_GRAYSCALE)
print(gray_img.shape)  # 输出 
#指定文件的质量
cv2.imwrite('anglababy.jpg',color_2,(cv2.IMWRITE_JPEG_QUALITY,1))#数字越小越模糊
#绘图,用这个color_2的通道绘图
cv2.imshow('my_img_name_1', color_2)
cv2.imshow('my_img_name_2', gray_img)
cv2.waitKey(0)  # 阻塞等键盘输入, 使图片展示而不被关闭
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打开相机,相关代码为:

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

b站相关配置视频:

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/22658.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LitCTF2024部分wp

litctf wp 第一次ak了web和misc,非常激动,感谢lictf给我这个机会 最终成果 全靠队里的密码逆向✌带飞。一个人就砍了近一半的分数 这里是我们队的wp web exx 题目名反过来就是xxe,考察xxe,查看登录的数据包 发现传的就是xml…

机器学习中的泛化与适应:深入理解域泛化、域适应、少样本学习、零样本学习、开放世界识别与开放词汇识别

机器学习中的泛化与适应:深入理解域泛化、域适应、少样本学习、零样本学习、开放世界识别与开放词汇识别 😎 作者介绍:我是程序员行者孙,一个热爱分享技术的制能工人。计算机本硕,人工制能研究生。公众号:A…

Java Web学习笔记8——表单

表单标签&#xff1a; 场景&#xff1a;在网页中主要负责数据采集功能&#xff0c;如注册、登录等数据采集。 标签&#xff1a;<form> 表单项、表单元素&#xff1a; 不同类型的input元素、下拉列表、文本域等。 <input>: 定义表单项、通过type形式控制输入形…

echarts系列:echarts中的legend名称最上面被遮挡一部分

在 ECharts 中,遇到 legend 的名称在图表中被遮挡。 被遮挡的原因,通常是因为布局问题,可能涉及到 legend 的位置、尺寸或者是与其他组件的重叠。 通过排查问题,发现以下一些解决 legend 名称被遮挡的方案: 调整 Legend 的位置: 你可以通过改变 legend 的 top, bottom, …

深入解读Prometheus Adapter:云原生监控的核心组件

一、引言 Prometheus Adapter的背景与重要性 在现代的云原生架构中&#xff0c;微服务和容器化技术得到了广泛的应用。这些技术带来了系统灵活性和扩展性的提升&#xff0c;但同时也增加了系统监控和管理的复杂度。Prometheus作为一款开源的监控系统&#xff0c;因其强大的指标…

JAVA面试八股文----Mybatis

1、Mybatis 1.1#{}和${}的区别是什么? Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值; Mybatis在处理 0 时,就是把 0时,就是把 0时,就是把{}替换成变量的值。 有了#{}为什么还需要${}? #{}会被预编译处理,可以有效的防止SQL注…

有关Qt的调用其他cpp文件出现的小问题

一开始出现了运行mainwindow文件过程调用其他cpp文件&#xff0c;而导致运行的ui界面卡住&#xff0c;后来发现在两个cpp文件中都进行了界面的初始化而导致界面的某些控件二次使用&#xff0c;所以会卡住。 ui->setupUi(this); 在Qt框架中&#xff0c;ui->setupUi(this)…

PPP-B2b精密产品使用注意事项及分析

1、因为在使用PPP-B2b进行定轨的时候&#xff0c;发的精密轨道产品是B3频点的&#xff0c;需要改正的卫星质心&#xff08;Com&#xff09;与SP3精密星历对比。 2、PPP-B2b产品吸收了电离层误差&#xff0c;因此电离层提取方面与IGS电离层完全无法对其。 3、由于PPP-B2b产品精…

JS包装类:为什么循环中为什么建议用变量存储str.length进行循环判断?

前言 在Javascript通常我们在遍历一个字符串的时候通常使用的方式是 var str "abcdefg"; for(let i0;i<str.length;i){}但在最近的学习中&#xff0c;有人建议我最好应该是下面这样执行。 var str "abcdefg"; for(let i0,len str.length;i<len;i)…

元宇宙3D品牌营销虚拟场景提升客户对企业的黏性

在这个充满创意与想象的3D元宇宙时代&#xff0c;我们为您推出了全新的3D元宇宙场景在线制作编辑平台&#xff0c;让您轻松构建专属的虚拟展厅&#xff0c;展现无限可能。 3D元宇宙场景在线制作编辑平台允许您快速完成空间设计&#xff0c;根据您的个性化需求&#xff0c;自由设…

适合初学者人手一本的LLM大语言模型综述,爆火全网

今天给大家推荐一本大模型&#xff08;LLM&#xff09;这块的一本外文书&#xff0c;经过整理已经出中文版了&#xff0c;就是这本《大型语言模型综述》&#xff01;本书在git上有9.2k star&#xff0c;还是很不错的一本大模型方面的书。 本教程内容主要内容&#xff1a;中文版…

python cs socket通信

#server import socket import threading import json import select def send_data(client,addr): while(1): ssinput(f"要发送给{addr}输入&#xff1a;") client.send(ss.encode("utf-8")) pass def recv_data(client,add…

牛客热题:矩阵最长递增路径

&#x1f4df;作者主页&#xff1a;慢热的陕西人 &#x1f334;专栏链接&#xff1a;力扣刷题日记 &#x1f4e3;欢迎各位大佬&#x1f44d;点赞&#x1f525;关注&#x1f693;收藏&#xff0c;&#x1f349;留言 文章目录 牛客热题&#xff1a;矩阵最长递增路径题目链接方法一…

leetcode155 最小栈

题目 设计一个支持 push &#xff0c;pop &#xff0c;top 操作&#xff0c;并能在常数时间内检索到最小元素的栈。 实现 MinStack 类: MinStack() 初始化堆栈对象。void push(int val) 将元素val推入堆栈。void pop() 删除堆栈顶部的元素。int top() 获取堆栈顶部的元素。i…

关于LPC1768在线升级的实现的注意事项

开发环境&#xff1a;Keil 5 uVision V5.38.0.0 1、使用IAP的方式&#xff08;应用程序在线编程&#xff09; 2、在Flash中构建用于升级的不同区域 &#xff08;1&#xff09;引导区 &#xff08;2&#xff09;APP区 &#xff08;3&#xff09;升级代码存放区域 注意&…

阿里影业业绩大涨,除了沸腾的文娱市场还有什么原因?

影视文娱市场的火热仍在延续&#xff0c;新定档的电影和演出&#xff0c;不断引人关注这个行业的生机。而这个行业的支持者、受益者&#xff0c;就站在一线。 5月29日晚&#xff0c;阿里影业发布截至2024年3月31日的2024财年业绩公告。社会文娱消费的热情&#xff0c;对优质项…

深度学习笔记:2.Jupyter Notebook

Jupyter Notebook 常用操作快捷键魔法指令_jupyter notebook快捷键调用函数-CSDN博客https://blog.csdn.net/qq_26917905/article/details/137211336?ops_request_misc%257B%2522request%255Fid%2522%253A%2522171748112816800182160793%2522%252C%2522scm%2522%253A%25222014…

Linux 下安装docker

Linux 下安装docker 本机是centos 7 非root 用户安装 如果是root用户安装则以下所有命令去掉 sudo 安装gcc 查看虚拟机是否安装 这是安装好了的 命令 gcc --version[nullDocker module]$ gcc --version gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44) Copyright ? 2015 Fr…

视频生成框架EasyAnimate正式开源!

近期&#xff0c;Sora模型的热度持续上涨&#xff0c;社区中涌现了一些类Sora的开源项目&#xff0c;这些项目均基于Diffusion Transformer结构&#xff0c;使用Transformer结构取代了UNet作为扩散模型的基线&#xff0c;旨在生成更长、更高分辨率、且效果更好的视频。EasyAnim…

罗德与施瓦茨RS SMA100A 9KHZ-3GHZ或6GHZ信号发生器

R&S SMA100A 提供信号质量、速度和灵活性。R&S SMA100A 是一款高级模拟发生器&#xff0c;因其出色的特性而树立了标准。 它结合了卓越的信号质量和极高的设置速度。无论是在开发、生产、服务还是维护方面&#xff0c;R&SSMA100A 都能出色地完成任务。 罗德与施瓦茨…