Skip to content

Commit

Permalink
Fix Alignment processing block:
Browse files Browse the repository at this point in the history
- The alignment must update the extrinsic of the new profile.
- the alignment shall filter inputs and avoid non-video frames passed on, otherwise the blocks fails with exception
This addresses IntelRealSense#3752
Tracked on: DSO-12515

Change-Id: I189a77710733245cd13644807420830b0d9bc432
Signed-off-by: Evgeni Raikhel <evgeni.raikhel@intel.com>
  • Loading branch information
ev-mp committed Apr 15, 2019
1 parent 24ce2c4 commit bacee5a
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion src/proc/align.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -155,6 +155,7 @@ namespace librealsense
aligned_intrinsics.width = to_video_profile->get_width();
aligned_intrinsics.height = to_video_profile->get_height();
aligned_video_profile->set_intrinsics([aligned_intrinsics]() { return aligned_intrinsics; });
aligned_profile->register_extrinsics_to(to_profile, { { 1,0,0,0,1,0,0,0,1 },{ 0,0,0 } });
}
}
}
Expand Down Expand Up @@ -244,7 +245,7 @@ namespace librealsense
_depth_scale = ((librealsense::depth_frame*)depth.get())->get_units();

if (_to_stream_type == RS2_STREAM_DEPTH)
frames.foreach([&other_frames](const rs2::frame& f) {if (f.get_profile().stream_type() != RS2_STREAM_DEPTH) other_frames.push_back(f); });
frames.foreach([&other_frames](const rs2::frame& f) {if ((f.get_profile().stream_type() != RS2_STREAM_DEPTH) && f.is<rs2::video_frame>()) other_frames.push_back(f); });
else
frames.foreach([this, &other_frames](const rs2::frame& f) {if (f.get_profile().stream_type() == _to_stream_type) other_frames.push_back(f); });

Expand Down

0 comments on commit bacee5a

Please sign in to comment.