프로그램 사용/ros
ubuntu 22.04 / libfreenect2 / ros / i5-8500 반쯤 성공
구차니
2026. 8. 18. 15:50
일단 오랫만에 하려니 까먹었..
2760p에서 SSD 뽑아서 옮기고 하는데 먼가 잘 안되네..
| $ source /opt/ros/humble/setup.bash $ cd ros2_ws/ ~/ros2_ws$ source install/setup.bash ~/ros2_ws$ ros2 launch kinect2_bridge kinect2_bridge_launch.yaml [INFO] [launch]: All log files can be found below /home/minimonk/.ros/log/2026-08-18-14-47-28-206839-minimonk-HP-EliteBook-2760p-2683 [INFO] [launch]: Default logging verbosity is set to INFO [INFO] [kinect2_bridge_node-1]: process started with pid [2684] [INFO] [point_cloud_xyzrgb_node-2]: process started with pid [2686] [kinect2_bridge_node-1] [INFO] [1787032048.561620321] [kinect2_bridge_node]: parameter: [kinect2_bridge_node-1] base_name: kinect2 [kinect2_bridge_node-1] sensor: default [kinect2_bridge_node-1] fps_limit: 30 [kinect2_bridge_node-1] calib_path: /home/minimonk/ros2_ws/src/kinect2_ros2/kinect2_bridge/data/ [kinect2_bridge_node-1] use_png: false [kinect2_bridge_node-1] jpeg_quality: 90 [kinect2_bridge_node-1] png_level: 1 [kinect2_bridge_node-1] depth_method: cpu [kinect2_bridge_node-1] depth_device: -1 [kinect2_bridge_node-1] reg_method: default [kinect2_bridge_node-1] reg_device: -1 [kinect2_bridge_node-1] max_depth: 12 [kinect2_bridge_node-1] min_depth: 0.1 [kinect2_bridge_node-1] queue_size: 5 [kinect2_bridge_node-1] bilateral_filter: true [kinect2_bridge_node-1] edge_aware_filter: true [kinect2_bridge_node-1] publish_tf: true [kinect2_bridge_node-1] base_name_tf: kinect2 [kinect2_bridge_node-1] worker_threads: 4 [kinect2_bridge_node-1] libva info: VA-API version 1.14.0 [kinect2_bridge_node-1] libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so [kinect2_bridge_node-1] libva info: Found init function __vaDriverInit_1_14 [kinect2_bridge_node-1] libva info: va_openDriver() returns 0 [kinect2_bridge_node-1] [INFO] [1787032048.795488827] [kinect2_bridge_node]: Kinect2 devices found: [kinect2_bridge_node-1] [INFO] [1787032048.795526124] [kinect2_bridge_node]: 0: 501441643042 (selected) [kinect2_bridge_node-1] [INFO] [1787032048.883343429] [kinect2_bridge_node]: starting kinect2 [kinect2_bridge_node-1] [INFO] [1787032049.528036575] [kinect2_bridge_node]: device serial: 501441643042 [kinect2_bridge_node-1] [INFO] [1787032049.528089258] [kinect2_bridge_node]: device firmware: 4.0.3911.0 [kinect2_bridge_node-1] [WARN] [1787032049.775072554] [kinect2_bridge_node]: using sensor defaults for color intrinsic parameters. [kinect2_bridge_node-1] [WARN] [1787032049.775198004] [kinect2_bridge_node]: using sensor defaults for ir intrinsic parameters. [kinect2_bridge_node-1] [WARN] [1787032049.775233483] [kinect2_bridge_node]: using defaults for rotation and translation. [kinect2_bridge_node-1] [WARN] [1787032049.775264689] [kinect2_bridge_node]: using defaults for depth shift. [kinect2_bridge_node-1] [INFO] [1787032049.797677152] [kinect2_bridge_node]: Using CPU registration method! [kinect2_bridge_node-1] [INFO] [1787032049.797721040] [kinect2_bridge_node]: Using CPU registration method! [kinect2_bridge_node-1] [INFO] [1787032049.814391118] [kinect2_bridge_node]: waiting for clients to connect [kinect2_bridge_node-1] [INFO] [1787032050.806967850] [kinect2_bridge_node]: client connected. starting device... [kinect2_bridge_node-1] [INFO] [1787032054.197297612] [kinect2_bridge_node]: depth processing: ~570.346ms (~1.75332Hz) publishing rate: ~4.98921Hz [kinect2_bridge_node-1] [INFO] [1787032054.197366612] [kinect2_bridge_node]: color processing: ~4.93251ms (~202.736Hz) publishing rate: ~4.98921Hz [kinect2_bridge_node-1] [INFO] [1787032057.202601972] [kinect2_bridge_node]: depth processing: ~1013.64ms (~0.986545Hz) publishing rate: ~3.99293Hz [kinect2_bridge_node-1] [INFO] [1787032057.202648584] [kinect2_bridge_node]: color processing: ~3.8534ms (~259.511Hz) publishing rate: ~3.99293Hz |
기존 i5-2520m 대비 오르긴 했는데.. 일단 CPU 로 해서 그런가 획기적으로 오르진 않았다.
| [kinect2_bridge_node-1] [INFO] [1783770781.952362253] [kinect2_bridge_node]: depth processing: ~454.726ms (~2.19912Hz) publishing rate: ~2.99997Hz [kinect2_bridge_node-1] [INFO] [1783770781.952462142] [kinect2_bridge_node]: color processing: ~13.8091ms (~72.4159Hz) publishing rate: ~11.9999Hz [kinect2_bridge_node-1] [INFO] [1783770784.961367722] [kinect2_bridge_node]: depth processing: ~1429.33ms (~0.69963Hz) publishing rate: ~2.65869Hz [kinect2_bridge_node-1] [INFO] [1783770784.961457981] [kinect2_bridge_node]: color processing: ~18.3239ms (~54.5735Hz) publishing rate: ~2.65869Hz |
+
다시 빌드 하고 시도
| $ sudo apt install gcc-10 g++-10 $ git clone --depth 1 https://github.com/NVIDIA/cuda-samples.git $ cd cuda-samples/Common $ sudo cp helper_math.h /usr/include $ cd ~/src/libfreenect $ mkdir build_cuda $ cd build_cuda $ cmake .. -DENABLE_CUDA=ON -DCUDA_HOST_COMPILER=/usr/bin/gcc-10 $ sudo make install ~/ros2_ws$ colcon build --symlink-install ~/ros2_ws$ vi ./src/kinect2_ros2/kinect2_bridge/launch/kinect2_bridge_launch.yaml 30 - name: "depth_method" 31 value: "default" |
kinect2를 인식해서 좋긴한데
dpeth_method / reg_mothod가 cpu로 돌아가는건지 cuda를 쓰는건지 모르겠다.
2% 지만 소비전류가 늘은거 보면 쓰는건 맞는거 같은데.. 성능 왜이러냐

| $ ros2 launch kinect2_bridge kinect2_bridge_launch.yaml [INFO] [launch]: All log files can be found below /home/minimonk/.ros/log/2026-08-18-15-32-14-328668-minimonk-HP-EliteBook-2760p-7007 [INFO] [launch]: Default logging verbosity is set to INFO [INFO] [kinect2_bridge_node-1]: process started with pid [7008] [INFO] [point_cloud_xyzrgb_node-2]: process started with pid [7010] [kinect2_bridge_node-1] [INFO] [1787034734.508992751] [kinect2_bridge_node]: parameter: [kinect2_bridge_node-1] base_name: kinect2 [kinect2_bridge_node-1] sensor: default [kinect2_bridge_node-1] fps_limit: 30 [kinect2_bridge_node-1] calib_path: /home/minimonk/ros2_ws/src/kinect2_ros2/kinect2_bridge/data/ [kinect2_bridge_node-1] use_png: false [kinect2_bridge_node-1] jpeg_quality: 90 [kinect2_bridge_node-1] png_level: 1 [kinect2_bridge_node-1] depth_method: default [kinect2_bridge_node-1] depth_device: -1 [kinect2_bridge_node-1] reg_method: default [kinect2_bridge_node-1] reg_device: -1 [kinect2_bridge_node-1] max_depth: 12 [kinect2_bridge_node-1] min_depth: 0.1 [kinect2_bridge_node-1] queue_size: 5 [kinect2_bridge_node-1] bilateral_filter: true [kinect2_bridge_node-1] edge_aware_filter: true [kinect2_bridge_node-1] publish_tf: true [kinect2_bridge_node-1] base_name_tf: kinect2 [kinect2_bridge_node-1] worker_threads: 4 [kinect2_bridge_node-1] libva info: VA-API version 1.14.0 [kinect2_bridge_node-1] libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.so [kinect2_bridge_node-1] libva info: Found init function __vaDriverInit_1_14 [kinect2_bridge_node-1] libva info: va_openDriver() returns 0 [kinect2_bridge_node-1] [INFO] [1787034735.139375282] [kinect2_bridge_node]: Kinect2 devices found: [kinect2_bridge_node-1] [INFO] [1787034735.139436224] [kinect2_bridge_node]: 0: 501441643042 (selected) [kinect2_bridge_node-1] [INFO] [1787034735.225374525] [kinect2_bridge_node]: starting kinect2 [kinect2_bridge_node-1] [INFO] [1787034735.540712973] [kinect2_bridge_node]: device serial: 501441643042 [kinect2_bridge_node-1] [INFO] [1787034735.540771176] [kinect2_bridge_node]: device firmware: 4.0.3911.0 [kinect2_bridge_node-1] [INFO] [1787034735.772433213] [kinect2_bridge_node]: Using CPU registration method! [kinect2_bridge_node-1] [INFO] [1787034735.772485273] [kinect2_bridge_node]: Using CPU registration method! [kinect2_bridge_node-1] [INFO] [1787034735.787628318] [kinect2_bridge_node]: waiting for clients to connect [kinect2_bridge_node-1] [INFO] [1787034736.781245426] [kinect2_bridge_node]: client connected. starting device... [kinect2_bridge_node-1] [INFO] [1787034740.153039579] [kinect2_bridge_node]: depth processing: ~614.366ms (~1.6277Hz) publishing rate: ~5.31568Hz [kinect2_bridge_node-1] [INFO] [1787034740.153092716] [kinect2_bridge_node]: color processing: ~4.92322ms (~203.119Hz) publishing rate: ~3.98676Hz [kinect2_bridge_node-1] [INFO] [1787034743.162903904] [kinect2_bridge_node]: depth processing: ~970.624ms (~1.03026Hz) publishing rate: ~3.98689Hz [kinect2_bridge_node-1] [INFO] [1787034743.162966773] [kinect2_bridge_node]: color processing: ~4.06577ms (~245.956Hz) publishing rate: ~3.98689Hz |
흐음.. 되는게 없네. 비율이 왜이러냐..

| cd ~/src/libfreenect2/build_cuda cmake .. -DENABLE_CUDA=ON -DCUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda -DCUDA_HOST_COMPILER=/usr/bin/gcc-10 -DENABLE_VAAPI=OFF make -j$(nproc) sudo make install |
빌드 없이 임시로
| $ LIBVA_DRIVER_NAME=dummy ros2 launch kinect2_bridge kinect2_bridge_launch.yaml |
depthcloud 추가

경고가 뜨는데 아마도.. 원래 상정된거랑 다른 topic이라 그런듯
그러니 Depth Map Topic과 Color Image Topic을 지정해주면

아래처럼 먼가 컬러로 나오긴 한다.

근데 slam은 어떻게 하지?
위에꺼 실행해두고, 아래꺼 하면 아무것도 안나오는데...
| ros2 run tf2_ros tf2_echo kinect2_link kinect2_rgb_optical_frame ros2 launch rtabmap_launch rtabmap.launch.py \ rgb_topic:=/kinect2/color/image \ depth_topic:=/kinect2/depth/image \ camera_info_topic:=/kinect2/color/camera_info |
