PointCloudLibrary/pcl

[io] Check for IR stream capability before creating it in `real_sense_2_grabber` for D415

Aberta

#3.809 aberto em 26 de mar. de 2020

 (1 comentário) (0 reação) (0 responsável)C++ (4.506 forks)batch import
good first issuekind: bugkind: todomodule: iostatus: triage

Métricas do repositório

Stars
 (9.023 estrelas)
Métricas de merge de PR
 (Mesclagem média 8d 7h) (3 fundiu PRs em 30d)

Description

Describe the bug

When trying to obtain point clouds from the Intel RealSense D415, in RealSense2Grabber::start(), I get an exception that "Stream is not supported." This comes from the check here. Specifically, when checking the RS2_STREAM_INFRARED stream, realsense throws a runtime error (rs_pipeline.hpp L69), since the D415 has no infrared stream.

Environment

  • OS: Windows 10
  • Compiler: cl 19.24.28314
  • PCL Version: 1.10.0

I am able to circumvent the issue by simply taking out the RS2_STREAM_INFRARED line, and everything works successfully (this is obviously not a general enough solution:

if ( prof.get_stream ( RS2_STREAM_COLOR ).format ( ) != RS2_FORMAT_RGB8 ||
      prof.get_stream ( RS2_STREAM_DEPTH ).format ( ) != RS2_FORMAT_Z16)
      THROW_IO_EXCEPTION ( "This stream type or format not supported." );

Guia do colaborador