Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
sensors:rgbdcamera [2016/02/18 15:22]
127.0.0.1 external edit
sensors:rgbdcamera [2025/08/28 13:44] (current)
clohr [SR300]
Line 49: Line 49:
  
 ++++ ++++
 +
 +===== Kinect Skeletal tracking =====
 +
 +  * Joints
 +{{https://​i-msdn.sec.s-msft.com/​dynimg/​IC584844.png}}
 +
 +  * Joint hierarchy
 +{{https://​i-msdn.sec.s-msft.com/​dynimg/​IC584387.png}}
 +
 +  * Hierarchical bone orientation:​ The orientation information is provided in form of quaternions and rotation matrices for use in different animation scenarios.
 +Bone rotation is stored in a bone’s child joint. For example, the rotation of the left hip bone is stored in the Hip Left joint. In the hierarchical definition, the rotation of the Hip Center joint provides the absolute orientation of the player in camera space coordinates. This assumes that the player object space has the origin at the Hip Center joint, the y-axis is upright, the x-axis is to the left, and the z-axis faces the camera.
 +
 +
 +  * Reference to skeletal tracking and joint orientation: ​
 +https://​msdn.microsoft.com/​en-us/​library/​hh973073.aspx
  
  
Line 57: Line 72:
 {{:​screen_shot_2015-12-09_at_15.55.12.png?​direct&​700|}} {{:​screen_shot_2015-12-09_at_15.55.12.png?​direct&​700|}}
  
 +
 +===== SR300 =====
 +https://​www.intel.fr/​content/​www/​fr/​fr/​products/​sku/​92329/​intel-realsense-camera-sr300/​specifications.html
 +
 +This paragraph explains how to install the legacy SR300 on recent Linux systems.
 +
 +  * Support for the retired SR300 camera model ended after librealsense 2.50.0. So you should compile version 2.50.0 in order for the SR300 to be detected. (https://​github.com/​IntelRealSense/​librealsense/​releases/​tag/​v2.50.0)
 +
 +  * Librealsense comes with two backend:
 +
 +    - The "​native"​ backend is a Linux kernel driver. It is therefore very dependent on the kernel to run (the latest one (I wrote this in Sept. 2025) is for Linux 6.8.0, the one for legacy Realsense devices is for Linux 4.4)
 +    - The "​libuvc"​ backend uses the standard uvc+hid kernel drivers and does the job in userland via the standard libuvc library. It is possibly less efficient (latency), but it is much more flexible and mostly independent of Linux kernel version.
 +
 +So, the idea is to compile librealsense v2.50.0 with the libuvc backend. The following is freely adapted from libuvc_installation.sh (https://​github.com/​IntelRealSense/​librealsense/​blob/​master/​scripts/​libuvc_installation.sh#​L35-L39)
 +
 +  * Compile & Install
 +
 +      wget https://​github.com/​IntelRealSense/​librealsense/​archive/​refs/​tags/​v2.50.0.tar.gz
 +      tar xvf v2.50.0.tar.gz
 +      cd ./​librealsense-2.50.0
 +   
 +      sudo cp config/​99-realsense-libusb.rules /​etc/​udev/​rules.d/ ​
 +      sudo udevadm control --reload-rules && sudo udevadm trigger ​
 +   
 +      sudo apt-get install -y git cmake libssl-dev freeglut3-dev libusb-1.0-0-dev pkg-config libgtk-3-dev
 +      mkdir build && cd build
 +      cmake ../ -DFORCE_LIBUVC=true -DCMAKE_BUILD_TYPE=release
 +      make -j2
 +      sudo make install
 +
 +
 +  * Test
 +
 +      rs-enumerate-devices ​
 +      realsense-viewer
 +
 +  * Tips: In case compilation fails on some non-essential SDK functionnalities,​ try to add one or several of the following compilation options on the cmake command line: `-DCHECK_FOR_UPDATES=OFF` `-DBUILD_EXAMPLES=OFF` `-DBUILD_TOOLS=OFF`
  • sensors/rgbdcamera.1455808962.txt.gz
  • Last modified: 2019/04/25 14:08
  • (external edit)