文章 ID: 000031703 内容类型: 兼容性 上次审核日期: 2021 年 07 月 07 日

如何在用于深度摄像头 D435 的 Matlab* 中获取红外英特尔® 实感™曝光?

环境

英特尔® 实感™深度摄像头 D400 系列 英特尔 实感 SDK(软件开发人员套件)2.0 版本 2.16.5 Matlab*

BUILT IN - ARTICLE INTRO SECOND COMPONENT
总结

需要将代码行添加到 depth_example.m 文件中才能访问 2 个红外流并设置在 英特尔® 实感™ 深度摄像头 D435 上的曝露

说明

我当前使用带 Matlab* 英特尔® 实感™深度摄像头 D435。我能够执行depth_example.m 源代码以获得深度,但是我想也显示红外流并设置暴露。可以指导我吗?

解决方法
  • 使用实感 SDK 2.0 版本 2.16.5(或更高版本)。
  • 修改depth_example.m代码以获取两个红外流,如下所示:


需要添加以下粗体行:
........
colorizer = realsense.colorizer();

cfg = realsense.config();
cfg.enable_all_streams();

profile = pipe.start(cfg);
dev = profile.get_device();
name = dev.get_info(realsense.camera_info.name);

sens = dev.first('depth_sensor');
sens.set_option(realsense.option.emitter_enabled, 0); %or 1

for i = 1:5
fs = pipe.wait_for_frames();
end

ir1 = fs.get_infrared_frame(1); 
ir2 = fs.get_infrared_frame(2);
irdata1 = ir1.get_data();
irdata2 = ir2.get_data();
ir_img1 = reshape(irdata1, 1280, 720);
ir_img2 = reshape(irdata2, 1280, 720);
figure, imshow(ir_img1');
title(sprintf("IR1 frame from %s", name));
figure, imshow(ir_img2');
title(sprintf("IR2 frame from %s", name));

.......

其他信息:

如果在升级后,帧集类中出现有关"int64_t"的错误,则您必须编辑 frameset.m, 然后将所有 int64_t 实例更改为int64

 

相关产品

本文适用于 1 产品

本页面上的内容是原始英文内容的人工翻译与计算机翻译的组合。我们提供此内容是为了您的便利并且仅供参考,未必完整或准确。如果本页面的英文版与翻译版之间存在任何冲突,应以英文版为准。 查看此页面的英语版本。