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
alignment fails when enable_device(serialid) is used #1504
Comments
Sound unrelated...when you enable_device you simply state to the pipeline's config to use that device upon the next Try to leave a single camera connected at each moment and see if align works. There should be no difference in this case if you use enable_device or not, if you do see a difference then I'm totally wrong it is a bug. |
Hello zivsha, Thank you for trying to help, It seems i have not been 100% clear, so i will try to clearify. My app works with one camera ( aligns the rgb to depth) correctly when i do not use the enable_device command . My next step is to prepare the app to support multiple cameras, Thanks, |
You were clear, that's how I understood it. Can you post the entire code from the creation of rs2::config up to align.process? |
ok, i think i have a lead. i also have a load camera parameters from json file ( myconfig.enable...-> pipiline.start -> burn off a few frames -> get_device+load_json -> waitForFrames -> align -> store to files.) when the config.enable phase includes enable_Device the load_json parms are honored ( i see the rgb result as green since i've set one of the parms accordingly ( don't rememer its name right now), when the config.enable phase does not include the explicit enable_device, it seems that the subsequent load_json is ignored, the result rgb image does not have a green hue, and the alignment is better. so i guess the questions now become Omer. |
i seems that the align.process was aligning "old" frames, not the newest/latest ones i was interested in. in other words, it seems that i have a very basic misunderstanding of the way this api works. must/can i discard the old frames i'm not interested in ? should i stop/start the pipeline instead? Omer. |
hello,
i've encountered the following using d415 , firmware 5.9.2, sdk 2.10.1:
alignment of rgb and depth works using examples code when streams are enabled as following:
enable_stream(RS2_STREAM_DEPTH, -1,640, 480, RS2_FORMAT_Z16 , 6);
enable_stream(RS2_STREAM_COLOR, -1,640, 480, RS2_FORMAT_RGB8, 6);
(
wait_for_frames();
rs2::align align(RS2_STREAM_COLOR);
align.process(..)
.get_depth_frame();
.first(RS2_STREAM_COLOR);
.
.
.
)
but when i add
enable_device(serialid); ( after the enable streams commands, and obviously before the wait for frames and jalignment commands)
the alignment fails. ( there is about a 10 pixel offset).
i need to use enable_device since my app will need to handle several cameras at once ( connected to different usb ports obviously...)
please advise.
Omer.
The text was updated successfully, but these errors were encountered: