Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pointcloud-stitching demo #9558

Merged
merged 35 commits into from Aug 10, 2021
Merged

Conversation

doronhi
Copy link
Contributor

@doronhi doronhi commented Aug 3, 2021

Add wrapper/pointcloud/pointcloud-stitching/rs-pointcloud-stitching demo.

The demo combines 2 devices into a wide FOV virtual device.
The method used to stitch the images is to transfer both pointclouds into the virtual device's coordinate system and then project them on the virtual device's images.

The app assumes the calibration matrix between the devices is known. A method for calculating it is demonstrated in the wrappers\pointcloud\pointcloud-stitching\doc\pointcloud-stitching-demo.md file.

Fill depth and color for previous closer pixel with no valid color.
Add button to save infrared images to be used in calibration process.
Fix issue fill depth even if no color available.
fix display of depth value
Fix _soft_dev sensors fps to realistic 10 so that the syncer will not dump the stitched depth frame.
Init window size according to available resolution.
…ation images (no input depth stream was defined)

Quit if connected using usb2.0 connection type.
save calibration images to calibration_input directory inside workspace.
Record into given workspace directory
@doronhi doronhi marked this pull request as draft August 3, 2021 08:35
@doronhi doronhi requested a review from ev-mp August 3, 2021 08:42
036522070660.cfg Outdated Show resolved Hide resolved
CMake/lrs_options.cmake Outdated Show resolved Hide resolved
CMakeLists.txt Show resolved Hide resolved
examples/example.hpp Outdated Show resolved Hide resolved
examples/example.hpp Outdated Show resolved Hide resolved
Copy link
Contributor Author

@doronhi doronhi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed. For some of the changes, I would like your approval.

examples/example.hpp Show resolved Hide resolved
examples/example.hpp Outdated Show resolved Hide resolved
examples/example.hpp Show resolved Hide resolved
wrappers/pointcloud/pointcloud-stitching/CMakeLists.txt Outdated Show resolved Hide resolved
There is no hard limitation on the values given to the virtual device.
Some notes to bear in mind for appearance:
- Areas in the virtual device's FOV that are not covered by actual devices create empty spaces in the image.
- Try to maintain the same width-height ration for color and depth images.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, they will be rectangular but this is not a hard limitation on the demo. A user can choose whatever seems nicer to them. I played around a little to find a visually pleasing result. If I came up with a strict rule that should be observed I would enforce it in the code or better yet, allow the user to set only part of the list and make the program fill the rest.

wrappers/pointcloud/pointcloud-stitching/readme.md Outdated Show resolved Hide resolved
@ev-mp ev-mp marked this pull request as ready for review August 9, 2021 16:40
Copy link
Collaborator

@ev-mp ev-mp left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good now!

@ev-mp ev-mp merged commit 4fd69ae into IntelRealSense:development Aug 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants