Git Product home page Git Product logo

Comments (4)

kohrt avatar kohrt commented on August 21, 2024

I have never experienced this. So the image shown is always the same? What is the kinect2_bridge output while the calibration tool is running?
Please try to run kinect2_bridge with a frame limit to reduce cpu load. rosrun kinect2_bridge kinect2_bridge _fps_limit:=1 should limit it to 1 frame per second.

from iai_kinect2.

wjchen84 avatar wjchen84 commented on August 21, 2024

Thank you Thiemo for the suggestion. I tried with reduced frame rate as you suggested and it worked now (with up to 15fps). So it seems my onboard intel gpu cannot handle the default computation load? I actually has Nvidia Quadro K2100M available but I couldn't make the Nvidia driver work with this package so I am using the Ubuntu driver (Nouveau) now.

If without reducing frame rate, the image shown is always the same, and the kinect2_bridage output is:


chin@chin-ThinkPad-W540:~$ rosrun kinect2_bridge kinect2_bridge
parameter:
        base_name: kinect2
           sensor: 
        fps_limit: -1
       calib_path: /home/chin/catkin_ws/src/iai_kinect2/kinect2_bridge/data/
          use_png: false
     jpeg_quality: 90
        png_level: 1
     depth_method: opencl
     depth_device: -1
       reg_method: opencl
       reg_devive: -1
        max_depth: 12
        min_depth: 0.1
       queue_size: 2
 bilateral_filter: false
edge_aware_filter: false
       publish_tf: false
     base_name_tf: kinect2
[OpenCLDepthPacketProcessor::listDevice]  devices:
  0: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
[OpenCLDepthPacketProcessor::init]  selected device: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
[Freenect2Impl] enumerating devices...
[Freenect2Impl] 14 usb devices connected
[Freenect2Impl] found valid Kinect v2 @4:3 with serial 511488142542
[Freenect2Impl] found 1 devices
Kinect2 devices found: 
  0: 511488142542 (selected)
[Freenect2DeviceImpl] opening...
[Freenect2DeviceImpl] opened
starting kinect2
[Freenect2DeviceImpl] starting...
[Freenect2DeviceImpl] ReadData0x14 response
92 bytes of raw data
0x0000:  00 00 12 00 00 00 00 00 01 00 00 00 43 c1 1f 41    ............C..A
0x0010:  00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00    ................
0x0020:  0a 21 33 55 c2 00 17 20 00 08 00 00 10 00 00 00    .!3U... ........
0x0030:  00 01 00 00 00 10 00 00 00 00 80 00 01 00 00 00    ................
0x0040:  31 33 00 00 00 0b 09 10 47 4d 46 31 35 31 2e 31    13......GMF151.1
0x0050:  58 00 00 00 00 00 00 00 00 00 00 00                X...........
[Freenect2DeviceImpl] ReadStatus0x090000 response
4 bytes of raw data
0x0000:  01 26 00 00                                        .&..
[Freenect2DeviceImpl] ReadStatus0x090000 response
4 bytes of raw data
0x0000:  03 26 00 00                                        .&..
[Freenect2DeviceImpl] enabling usb transfer submission...
[Freenect2DeviceImpl] submitting usb transfers...
[Freenect2DeviceImpl] started
device serial: 511488142542
device firmware: 2.3.3912.0.7
default ir camera parameters: 
fx 365.192, fy 365.192, cx 259.865, cy 205.231
k1 0.0904933, k2 -0.271391, p1 0, p2 0, k3 0.0980318
default color camera parameters: 
fx 1081.37, fy 1081.37, cx 959.5, cy 539.5
can't open calibration depth file: /home/chin/catkin_ws/src/iai_kinect2/kinect2_bridge/data/511488142542/calib_depth.yaml
using defaults.
[DepthPacketStreamParser::handleNewData] not all subsequences received 0
[DepthPacketStreamParser::handleNewData] not all subsequences received 992
camera parameters used:
camera matrix color:
[1066.012036063793, 0, 945.5875275108556;
  0, 1068.870839991165, 520.0699401235653;
  0, 0, 1]
distortion coefficients color:
[0.05936010800899182, -0.06275828799983664, -0.001576685943614854, -0.001150297184570883, 0.007765753149147602]
camera matrix ir:
[366.3834628814857, 0, 255.6453189033047;
  0, 367.1438070708102, 203.98020160452;
  0, 0, 1]
distortion coefficients ir:
[0.1095276139999809, -0.3146167880488606, -0.001261360214646369, -0.0007181553826209735, 0.1256538278071737]
rotation:
[0.9999993227909276, 0.00114186599781928, -0.0002248549068378815;
  -0.00114226486851772, 0.9999977601416531, -0.00178183687444405;
  0.0002228197842542006, 0.001782092511628542, 0.9999983872475114]
translation:
[-0.05201715212410899;
  -0.0002404511811226247;
  0.0002945446940294137]
depth shift:
0
[DepthRegistration::New] Using OpenCL registration method!
[DepthRegistration::New] Using OpenCL registration method!
[DepthRegistrationOpenCL::listDevice]  devices:
  0: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
[DepthRegistrationOpenCL::init]  selected device: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
[DepthRegistrationOpenCL::listDevice]  devices:
  0: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
[DepthRegistrationOpenCL::init]  selected device: Intel(R) HD Graphics Haswell GT2 Mobile (GPU)[Intel]
starting 8 worker threads
starting main loop
[kinect2_bridge] depth avg. time: 0.0330748 -> ~30.2345 Hz
[kinect2_bridge] color avg. time: 0.0345955 -> ~28.9055 Hz
[OpenCLDepthPacketProcessor] avg. time: 8.69406ms -> ~115.021Hz
[TurboJpegRgbPacketProcessor] avg. time: 20.765ms -> ~48.1579Hz
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[kinect2_bridge] depth avg. time: 0.0353149 -> ~28.3166 Hz
[kinect2_bridge] color avg. time: 0.0441437 -> ~22.6533 Hz
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[OpenCLDepthPacketProcessor] avg. time: 13.7366ms -> ~72.7984Hz
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[TurboJpegRgbPacketProcessor] avg. time: 28.9298ms -> ~34.5664Hz
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[RgbPacketStreamParser::handleNewData] skipping rgb packet!
[kinect2_bridge] depth avg. time: 0.0333422 -> ~29.992 Hz
[kinect2_bridge] color avg. time: 0.0468875 -> ~21.3277 Hz
[OpenCLDepthPacketProcessor] avg. time: 11.6963ms -> ~85.4973Hz
^C[Freenect2DeviceImpl] stopping...

from iai_kinect2.

kohrt avatar kohrt commented on August 21, 2024

I guess it is not the GPU but the CPU load. The calibration tool tries to detect the pattern in each image it receives, so if the rate in which it receives images is as high or higher than the time it takes to detect the pattern, then it will use as much CPU as possible. For calibration there is no need for a high frame rate, because images are taken slowly.

from iai_kinect2.

wjchen84 avatar wjchen84 commented on August 21, 2024

Thank you Thiemo for the explanation. I think that makes sense to me. I can feel the heat from the CPU when running for long. I will just use low frame rate for calibration. I think we can close this issue now.

from iai_kinect2.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.