-
Notifications
You must be signed in to change notification settings - Fork 194
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
realsense2 device doesn't work with D435i camera(two RGB) #2009
Comments
BTW I noticed that, regardless of the depth resolution set in the .ini file, the resolution of the depth frames always matches the chosen RGB resolution. |
Hi @PeterBowman First of all I'd suggest you to change the name of the
Here in the lab we have only D435 and D415, we don't have the D435i to test it. With the D435 the output is:
The fix you propose probably make work the D435i but breaks the D435 and D415 since they have only 2 sensors. Maybe your second RGB camera is somehow broken.
This is due to the |
It was only meant to be a quick test to prove that the sensor count in this model is causing trouble. I'll try to find out what's going on with this second RGB sensor.
Thanks! @Nicogene if you don't mind me adding a short off-topic: have you tried to launch the old OpenNI2 device with a RealSense2 camera? I'm interested in skeleton tracking, mainly, and I found that YARP 3 (this device was dropped in said release) doesn't provide a means to retrieve and track human skeletons (attempted standard interface at robotology/assistive-rehab#2 (comment)). |
Do you mean use the D435(i) with the deprecated openni2 device ? The I'm not sure that the I never tried to launch a realsense device with But why do you need to run it with
It doesn't, but I can discuss with @pattacini if we can standardize and integrate in YARP what they did in assistive-rehab. I'm ok with that |
Hi @PeterBowman If you want to try out what we've been working on you're more than welcome. You could start off with our documentation: https://robotology.github.io/assistive-rehab/doc/mkdocs/site/index.html. @Nicogene we haven't planned to devote resources to standardizing C++ classes to then put them back in YARP. We don't have time to go through these steps right now since we have to concentrate on our project objectives. That said, we will carefully look at all possible contributions. |
I've tried and
|
HI, thank you for those pointers, the official OpenNI2 driver looks very promising. OpenPose-based skeleton tracking uses 2D frames. If I'm correct, you merge this information with depth data, which is something we can consider later on - our main focus is to explore the capabilities of the RealSense SDK with pure 3D information. The legacy YARP/OpenNI2 device seems like a ready-to-use solution with a simple and known API, therefore we'd try to explore it first. |
@PeterBowman out of sheer curiosity, is the following video showing the output of the SDK you mentioned? https://www.youtube.com/watch?v=gMPtV4NXtUo I've poked around and found out that Nuitrack makes use of the SDK. |
@pattacini Nuitrack is another option we are considering, thanks! In case there is no alternative to writing our own code, this wrapper might yield better results than the official RealSense SDK. So far, I have successfully built the OpenNI2 driver and can use it with the legacy YARP driver, but NiTE reports that it's unable to start user tracking (ref). I'll investigate that further. Edit: must force same RGB resolution+framerate equal and depth resolution+framerate, e.g. |
Just wondering because from the video it looks like that the skeleton is available only when a correct segmentation in 3D is obtained, whereas with OpenPose the detection is always at hand. Perhaps, this condition is satisfied in your setting and you're happy with that. Anyway, I don't want to pollute this thread with a discussion not relevant to solving the issue. If interested, we could keep talking in https://spectrum.chat/icub/technicalities. |
I forgot to clarify this in the PR. For future reference, the third sensor present in the D435i model is an IMU, mistakenly identified by the YARP device as an RGB camera. |
I'm trying to start the
realsense2
device with the following configuration (realsense2.ini
):The launch command is
yarpdev --from realsense2.ini
, it crashes with a[ERROR]realsense2Driver: Setting param rgbResolution failed... quitting.
. See attached output file.I was suspicious about this line:
[INFO]realsense2Driver: Device consists of 3 sensors
According to the following code excerpt, the device reports one depth sensor present and two RGB cameras, one of which (the second one, which is highly relevant) seems faulty since barely no options are present. The driver device loops over these sensors and assigns depth and color handles accordingly:
yarp/src/devices/realsense2/realsense2Driver.cpp
Lines 515 to 528 in 32ba9f4
The RGB handle is linked with the last (=second) RGB camera. If I tweak this code so that to a pointer to the first camera is assigned to
m_color_sensor
(e.g. make the loop end atm_sensors.size() - 1
), the device initializes correctly.Configuration:
The text was updated successfully, but these errors were encountered: